Appearance
常用 git 命令集合
git stash
git stash
会将当前未提交的修改(包括暂存和非暂存)都保存起来, 用于后续恢复当前工作目录。
该命令可以在很多场景下用到:
- 比如,开发时忘记创建新的分支,直接在
master
分支上开发了一大堆内容。突然想起来要检出一个新的分支。。。怎么办?把当前修改的文件复制一份,再把master
分支恢复原样?这样做好慢呀。这时,就可以用到git stash
命令了
git stash
git stash
会将当前未提交的修改(包括暂存和非暂存)都保存起来, 用于后续恢复当前工作目录。这样,当前的工作目录就干净了
PS:stash
是本地的,不会通过 git push
上传到远端
实际应用中可以给每一个 stash
添加一个 message
, 用于记录版本,使用 git stash save
取代 git stash
命令
git stash pop
可以通过该命令恢复之前缓存的工作目录,也就是之前修改的文件。该命令会将缓存堆栈中的第一个 stash
删除,并将对应修改应用到当前工作目录
也可以使用 git stash apply
命令,将缓存堆栈中的 stash
多次应用到工作目录中,但并不删除 stash
拷贝
从远程仓库拉取某一个指定的分支
平时在做项目时,经常需要拉取远程仓库中的某个指定分支。有三种方式可以实现这一目标
git clone -b 分支名
该命令可以将远程仓库中的某一分支拉取到本地,且本地分支和远程分支同名
该命令并没有将远程仓库 clone 下来,而是直接进入到了分支所在的目录拉取代码
git fetch
使用 git fetch
命令时,需要先将远程的仓库克隆到本地,然后在执行git fetch
命令。该命令执行完以后还是处在 master
主分支的,如果进去目录没有发现想要拉取的仓库文件。此时并不是 git fetch
命令没有执行,而是我们还没有切换到我们想要拉取的分支上,需要我们执行 git checkout
命令切换到我们想要拉取的分支上。
拉取整个远程代码库
git clone url
cd 目录
执行git fetch命令,将远程仓库的所有分支拷贝到本地仓库
git fetch
执行
git checkout <分支名称>
命令,切换到我们想要拉取的指定某一个分支的本地分支
git checkout
git checkout
命令可以用于签出分支,不仅作用于本地分支,远程分支也可以生效
有如下两种方法:
第一种:
git fetch -all
git checkout 远程分支名
第二种:
git checkout -b 创建的本地分支名 origin/远程分支名
删除分支
删除本地分支
git branch -d local_branch-name
删除远程分支
git
git merge
分支合并需要两步,例如,想要将 A 分支合并到 B 分支
进入目标分支 B
git merge A
git branch
git branch -a
git branch -a
可以查看远程分支
远程分支用红色字体展示
本地分支用白色字体展示