Git分支
什么是Git分支
假设在产品上线后,需要对产品进行功能增加,或者修改bug,此时需要保持主线版本不变,然后在原有基础上工作,所以此时需要一个支线来开发,这条支线就是分支,分支测试无误后可以和主线合并。
分支的创建
- 创建分支只需使用命令
git branch 分支名
,在使用如下命令后
git branch testing
会产生一个新的指针指向最新提交版本。
切换分支
- 切换分支只需要命令
git chechout 分支名
,在使用如下命令后
git checkout testing
HEAD指针会指向testing。
- 使用命令
git checkout -b 分支名
等同于
git branch 分支名
git checkout 分支名
- PS: 使用
git log --decorate
显示历史提交版本,使用--decorate
参数是将所有的包括分支的提交版本一起显示出来,如果加上参数--oneline
就会将记录一行一行的显示出来且精简的显示信息,如果加上参数--graph --all
则是将所有提交记录以图的方式显示出来。
分支合并
- 使用命令
git merge 分支名
,可以将分支内容与master合并,若果没有冲突,合并会顺利结束。 -
(有冲突时的合并) 有时候合并操作不会如此顺利。 如果你在两个不同的分支中,对同一个文件的同一个部分进行了不同的修改,Git 就没法干净的合并它们。但是在使用命令
git merge 分支名
后,Git 做了合并,但是没有自动地创建一个新的合并提交。 Git 会暂停下来,等待你去解决合并产生的冲突。Git 会在有冲突的文件中加入标准的冲突解决标记,这样你可以打开这些包含冲突的文件然后手动解决冲突。解决问题后,再提交修改即可。
分支删除
- 使用命令
git branch -d 分支名
可以删除此分支,但如果删除出现错误,可以强制删除,使用命令git branch -D 分支名
即可。
参考:https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%AE%80%E4%BB%8B