一、git冲突的场景git
实际上,push操做便是将本地代码merge到远端库分支上。github
关于push和pull其实就分别是用本地分支合并到远程分支 和 将远程分支合并到本地分支vim
注:借用vim或者IDE或者直接找到冲突文件,修改。spa
三、实战演示3d
(1)情景code
本地库中两个不一样分支,修改同一个文件同一代码块,两分支前后将修改合并到master分支上,master在合并第二个分支代码时,报错:合并冲突。blog
(2)本地库get
<1>master分支it
<2>创建两个分支ast
<3>两分支修改提交
aBranch分支:
bBranch分支:
(3)合并分支产生冲突
合并aBranch分支(将aBranch分支合并到当前master分支上):
注:
git merge:默认状况下,Git执行"快进式合并"(fast-farward merge),会直接将Master分支指向Develop分支。
使用--no-ff参数后,会执行正常合并,在Master分支上生成一个新节点。为了保证版本演进的清晰,建议采用这种方法。
再合并bBranch分支,产生冲突:
mergeTest.txt 文件内容:
(4)解决冲突
--->在当前分支上(master),找到冲突文件,直接修改冲突代码,add,commit。
注:简单方法,使用vim修改,cat查看冲突文件。(注意要删除git自动生成的冲突代码分隔符)
(5)完成冲突解决
注:提交或者合并都会生成git节点。每一个节点对应一个代码版本。
注:转载做者 ----- 下面 做者 github 地址。