1、git冲突的场景

  • 情景一:多个分支代码合并到一个分支时;
  • 情景二:多个分支向同一个远端分支推送代码时;

实际上,push操作即是将本地代码merge到远端库分支上。

关于push和pull其实就分别是用本地分支合并到远程分支 和 将远程分支合并到本地分支

所以这两个过程中也可能存在冲突。

git的合并中产生冲突的具体情况:
  <1>两个分支中修改了同一个文件(不管什么地方)
  <2>两个分支中修改了同一个文件的名称
两个分支中分别修改了不同文件中的部分,不会产生冲突,可以直接将两部分合并。

2、冲突解决方法

  • 情景一:在当前分支上,直接修改冲突代码--->add--->commit。
  • 情景二:在本地当前分支上,修改冲突代码--->add--->commit--->push

注:借用vim或者IDE或者直接找到冲突文件,修改。

3、实战演示

(1)情景

  本地库中两个不同分支,修改同一个文件同一代码块,两分支先后将修改合并到master分支上,master在合并第二个分支代码时,报错:合并冲突。

(2)本地库

<1>master分支

<2>建立两个分支

<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节点。每个节点对应一个代码版本。

Git冲突与解决方法相关推荐

  1. Git冲突与解决方法【转】

    本文转载自:https://www.cnblogs.com/gavincoder/p/9071959.html Git冲突与解决方法 1.git冲突的场景 情景一:多个分支代码合并到一个分支时: 情景 ...

  2. 【Git】Git冲突与解决方法

    目录 一.Git冲突如何产生? 二.解决Git冲突-手动修改冲突 [第一步]在 hot-fix 分支上增加如下代码,并且提交. [第二步]在master 分支上同样的地方增加如下代码,并且提交. [第 ...

  3. Git 冲突的解决方法

    作者:Kichirin 链接:https://www.jianshu.com/p/9382a0e3402a 来源:简书 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. Git在p ...

  4. Eclipse的Git插件Egit: merge合并冲突具体解决方法

    Eclipse的Git插件Egit: merge合并冲突具体解决方法 参考文章: (1)Eclipse的Git插件Egit: merge合并冲突具体解决方法 (2)https://www.cnblog ...

  5. Git:代码冲突常见解决方法

    Git:代码冲突常见解决方法 参考文章: (1)Git:代码冲突常见解决方法 (2)https://www.cnblogs.com/zhujiabin/p/10270181.html 备忘一下.

  6. Github上的版本和本地版本冲突的解决方法

    Github上的版本和本地版本冲突的解决方法 远程和本地版本冲突 情景: 在github上创建项目,然后本地git init 然后没有git pull -f --all 然后git add .  | ...

  7. element-ui和semantic-ui冲突的解决方法--局部引入semantic-ui的css

    element-ui和semantic-ui冲突的解决方法--局部引入semantic-ui的css 参考文章: (1)element-ui和semantic-ui冲突的解决方法--局部引入seman ...

  8. 我爱Java系列---【 maven依赖版本冲突的解决方法】

    我爱Java系列---[ maven依赖版本冲突的解决方法] 参考文章: (1)我爱Java系列---[ maven依赖版本冲突的解决方法] (2)https://www.cnblogs.com/hu ...

  9. Intellij+maven:jar包冲突的解决方法(Hbase和Guava的冲突)

    Intellij+maven:jar包冲突的解决方法(Hbase和Guava的冲突) 参考文章: (1)Intellij+maven:jar包冲突的解决方法(Hbase和Guava的冲突) (2)ht ...

  10. github上的版本和本地版本冲突的解决方法(Updates were rejected because the tip of your current branch is behind)

    github上的版本和本地版本冲突的解决方法(Updates were rejected because the tip of your current branch is behind) 参考文章: ...

最新文章

  1. PyCharm没有run选项,只有run nosetests in XXX
  2. python 爬虫 selenium
  3. C语言深度剖析书籍学习记录 第二章 符号
  4. slim框架中防止crsf攻击时,用到的函数hash_equals
  5. chrome net::ERR_CERT_AUTHORITY_INVALID 问题
  6. 解读华为云原生数据库设计原则,打破传统数据库上云瓶颈
  7. 这次是小米!5.31亿元深圳买地:将与腾讯、阿里做邻居
  8. Socket编程入门
  9. JS动态修改页面EasyUI datebox不生效、EasyUI动态添加Class、EasyUI动态渲染解析解决方案
  10. 在Entity Framework中使用事务
  11. 基于C语言的小游戏合集
  12. Sharepoint开发中CAML的介绍
  13. 【软件测试之项目实战】
  14. CSDN独家全网首发专栏 | 《目标检测YOLO改进指南》改进涨点推荐!
  15. 分类算法之K-Nearest Neighbors
  16. 集团企业邮箱申请哪家的好,怎么选择?
  17. Personalized Web Search总结
  18. js-排序-对象key自动排序问题
  19. wannacry 勒索病毒_WannaCry:勒索软件尸检
  20. 霍常亮教你开发淘宝客app第11节:uniapp数据绑定

热门文章

  1. css元素可拖动,css3实现可拖动的魔方3d效果
  2. 汤姆猫炫跑鸿蒙,汤姆猫炫跑最新版下载|汤姆猫炫跑新版本下载 安卓版 v1.4.0.470- 游娱下载站...
  3. 常见系统安全漏洞及解决方案
  4. 自己使用的jquery公用common.js
  5. 模式识别-高维空间降维的重要性
  6. 英文版红帽linux设置屏保,Linux下屏保设置
  7. python在电脑上怎样下载_怎样在电脑上下载哔哩哔哩的视频?
  8. Failed to open /var/lib/samba/private/secrets.tdb
  9. 该内存不能为read或written的解决方案
  10. bat:windows bat脚本修改文件内容