一、解决冲突
1、准备新的分支feature1,继续新分支开发
![](https://note.wiz.cn/api/document/files/unzip/0a7eafd0-7f2d-4fb4-9f8e-5e465a5dc1d4/bc356fa5-66be-4e2f-b3db-b731313ad94c.7914/index_files/47618e28-ff86-4321-bba3-0b5a98130234.png)
2、修改README.md最后一行,加个1
![](https://note.wiz.cn/api/document/files/unzip/0a7eafd0-7f2d-4fb4-9f8e-5e465a5dc1d4/bc356fa5-66be-4e2f-b3db-b731313ad94c.7914/index_files/fd930f33-4d50-4979-87bc-e662c07020a6.png)
3、提交修改
![](https://note.wiz.cn/api/document/files/unzip/0a7eafd0-7f2d-4fb4-9f8e-5e465a5dc1d4/bc356fa5-66be-4e2f-b3db-b731313ad94c.7914/index_files/4e973f17-9b5b-4b06-ba4b-1031a2e060bf.png)
4、切换到master分支,还提醒我们当前master分支比远程master分支还超前一个提交
![](https://note.wiz.cn/api/document/files/unzip/0a7eafd0-7f2d-4fb4-9f8e-5e465a5dc1d4/bc356fa5-66be-4e2f-b3db-b731313ad94c.7914/index_files/6418f250-d307-4b56-abfc-1f327ed57a35.png)
5、在master分支上,把README.md最后一行加上一个3
![](https://note.wiz.cn/api/document/files/unzip/0a7eafd0-7f2d-4fb4-9f8e-5e465a5dc1d4/bc356fa5-66be-4e2f-b3db-b731313ad94c.7914/index_files/0d4f8af3-5f7a-41de-bd15-d61b06535d25.png)
6、在master分支上把修改提交
![](https://note.wiz.cn/api/document/files/unzip/0a7eafd0-7f2d-4fb4-9f8e-5e465a5dc1d4/bc356fa5-66be-4e2f-b3db-b731313ad94c.7914/index_files/5776272c-904c-43a2-b2bc-de41fc9e10e2.png)
7、现在,master和feature1分支都各有新的提交,就成了下面这样。这种情况下,Git无法执行“快速合并”,只能试图把各自的修改合并起来,但这种合并就有可能冲突
![git-br-feature1](https://i-blog.csdnimg.cn/blog_migrate/0a88a6f534726944e260adc993f565c3.png)
8、将feature1的修改合并到master分支,发生了冲突,Git告诉我们README.md文件冲突,必须解决冲突后再提交。git status也可以告诉我们冲突文件
![](https://note.wiz.cn/api/document/files/unzip/0a7eafd0-7f2d-4fb4-9f8e-5e465a5dc1d4/bc356fa5-66be-4e2f-b3db-b731313ad94c.7914/index_files/8b3dd23a-9561-43ec-b945-795771bb9d95.png)
![](https://note.wiz.cn/api/document/files/unzip/0a7eafd0-7f2d-4fb4-9f8e-5e465a5dc1d4/bc356fa5-66be-4e2f-b3db-b731313ad94c.7914/index_files/2f47cd65-a354-4dac-a3b2-5842bd7ccb8c.png)
9、打开README.md文件,可以看到Git用如下标记标识出不同版本,修改成正确的结尾为123(2是之前feature1分支上我又执行了一次修改)
![](https://note.wiz.cn/api/document/files/unzip/0a7eafd0-7f2d-4fb4-9f8e-5e465a5dc1d4/bc356fa5-66be-4e2f-b3db-b731313ad94c.7914/index_files/5f3313d4-ea27-44b3-8e85-967166ba6996.png)
10、再提交,分支变成下图(注意:此时master分支文件结尾内容为123,feature还是12):
![git-br-conflict-merged](https://i-blog.csdnimg.cn/blog_migrate/64ffffef239666981413eb08eb624158.png)
11、用
git log --graph --pretty=oneline --abbrev-commit命令查看分支合并情况
![](https://note.wiz.cn/api/document/files/unzip/0a7eafd0-7f2d-4fb4-9f8e-5e465a5dc1d4/bc356fa5-66be-4e2f-b3db-b731313ad94c.7914/index_files/952925ee-b842-4895-ae34-9d3266b3de0a.png)
12、最后删除feature1分支
![](https://note.wiz.cn/api/document/files/unzip/0a7eafd0-7f2d-4fb4-9f8e-5e465a5dc1d4/bc356fa5-66be-4e2f-b3db-b731313ad94c.7914/index_files/db9933f9-ed45-4f3a-a9dd-0ac585d872d9.png)
小结
当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。
用git log --graph
命令可以看到分支合并图。