【Git分支管理】分支合并冲突及其解决

avatar
作者
筋斗云
阅读量:1

目录

0.合并冲突

1.创建和切换dev1

​2.dev1 bbb on dev branch

​3.master ccc on dev branch

4.dev1和master合并冲突

5.合并冲突解决 

​6.git log查看合并流程图


  • 先提交再合并 

0.合并冲突

在使用git进行合并操作的时候,在合并两个分支的时候就有可能出现合并冲突问题。

 两个分支同时修改同一个文件的同一行内容时:

  • 创建一个本地分支dev1,在dev1分支下修改ReadMe文件,将aaa内容修改bbb
  • 与此同时在master分支下也修改ReadMe文件,将aaa其容修改ccc
  • 当将dev1分支合并到master分支中,Git没有办法知道到底是保留bbb 还是 ccc ❗
  • 所以git在合并dev1和master的时候就会出现问题,这个问题就是:合并冲突问题!
  • 这两行代码是开发人员写的,我们要根据我们的需要留下需要的代码,并不是由Git做决定的。

1.创建和切换dev1

前文 创建和切换 dev1分支 是需要两行命令,这里介绍 一行命令直接搞定 创建和切换到dev1分支下。

git branch dev1 创建dev1分支下

git checkout dev1 切换到dev1分支下

git checkout -b dev1(-b创建新分支选项)新的分支的分支名

2.dev1 bbb on dev branch

3.master ccc on dev branch

4.dev1和master合并冲突

5.合并冲突解决 

Automatic merge failed; fix conflicts and then commit the result.
手动解决冲突并且再次提交结果

1.修复冲突:人为手动修改保留我们想要的代码

2.再次提交 :add 和 commit

之前master和dev都指向最新的提交记录☞合并之后☞解决冲突☞再次提交☞在master上又进行了一次提交,merge合并的提交☞master指向这次提交

【手动解决】 

【再次在master分支上提交】 

 

【仓库状态】 


【file文件上,dev1和master的合并冲突】 

 

6.git log查看合并流程图

⽤带参数的 git log也可以看到分⽀的合并情况,具体⼤家可以⾃⾏搜索 git log 的⽤法。

命令git log也可以让合并流程可视化

git log  --greph(图) -- abbrev(将长的commit id进行一个缩写)-commit

git log --graph --pretty=oneline --abbrev-commit

git log --graph --abbrev-commit

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!