步骤:
1.在mater分支下创建 feature1分支,切换到 feature1
2.修改feature1 下readme,txt文件后,
git add "readme.txt"
git commit -m "f re"
3.切换到master分支下,修改readme.txt文件
git add "readme.txt"
git commit -m "f re"
4.合并分支:
git merge feature1 //合并出现冲突
自动合并 readme.txt
冲突(内容):合并冲突于 readme.txt
自动合并失败,修正冲突然后提交修正的结果。
git status 查看
vi read.txt //修改
5.重新添加,递交
git add readme.txt
git commit -m "re"
6.
查看分支合并情况:
git log --graph --pretty=oneline --abbrev-commit
删除feature1
git brand -D freture1
1.准备新的feature1分支,继续我们的新分支开发:
$ git checkout -b feature1
切换到一个新分支 'feature1'
2.修改readme.txt最后一行,改为:abc
在feature1分支上提交:
$ git add readme.txt
$ git commit -m "fe re"
3.切换到master分支上,修改readme.txt内容为:000,进行添加,提交
$ git checkout master
切换到分支 'master'
readme.txt内容修改为:123
$ git add readme.txt
$ git commit -m "fe re"
4.合并featrue1分支到master上
$ git merge feature1
$ git merge feature1
自动合并 readme.txt
冲突(内容):合并冲突于 readme.txt
自动合并失败,修正冲突然后提交修正的结果。
现在,master分支和feature1分支各自都分别有新的提交,变成了这样:
这种情况下,Git无法执行“快速合并”,只能试图把各自的修改合并起来,但这种合并就可能会有冲突,我们试试看:
$ git status
位于分支 master
.....
双方修改: readme.txt
$ vi readme.txt
Git用<<<<<<<,=======,>>>>>>>标记出不同分支的内容,我们修改后保存
5.重新进行添加提交
$ git add readme.txt
$ git commit -m "re"
[master 16d77ab] re
用带参数的git log也可以看到分支的合并情况:
$ git log --graph --pretty=oneline --abbrev-commit
* 16d77ab (HEAD -> master) re
|\
| * 72e68f4 (feature1) fe re
* | d366629 ma re
|/
* d03b481 (origin/master) fe re
* a2b7354 re
|\
| * 7da6f19 feature1 re
* | 4227053 master re
|/
* 24b8815 readme.txt
最后,删除feature1分支:
$ git branch -D feature1
已删除分支 feature1(曾为 72e68f4)。