首页 > 其他 > 详细

Git 分支管理 解决冲突

时间:2019-05-11 20:30:55      阅读:158      评论:0      收藏:0      [点我收藏+]

  

 

 

  人生不如意之事十之八九,合并分支往往也不是一帆风顺的。

  准备新的feature1分支,继续我们的新分支开发:

    $ git checkout -b feature1

      技术分享图片

 

 

--

  feature1分支上修改readme.txt最后一行,改为:

        Creating a new branch is quick AND simple.

 

---

  feature1分支上提交:

      $ git add readme.txt
      $ git commit -m "AND simple"

           技术分享图片

           技术分享图片

 

 

 ----

  切换到master分支:

     技术分享图片

 

-----

  master分支上把readme.txt文件的最后一行改为:

        Creating a new branch is quick & simple.

 

------

  在master分支上提交:

    技术分享图片

 

-------

  现在,master分支和feature1分支各自都分别有新的提交,变成了这样: 

       技术分享图片

        技术分享图片

 

 

--------

  这种情况下,Git无法执行“快速合并(这种模式下,删除分支后,会丢掉分支信息)

  只能试图把各自的修改合并起来但这种合并就可能会有冲突,我们试试看:

     

      技术分享图片

      发生冲突了

      Git告诉我们,readme.txt文件存在冲突,必须手动解决冲突后再提交。

 

   git status也可以告诉我们冲突的文件:

       技术分享图片

  

  我们也可以直接查案readme.txt的内容

      技术分享图片

    Git用<<<<<<<=======>>>>>>>标记出不同分支的内容

 

 

---------

  我们修改如下后保存: 

      Creating a new branch is quick and simple.

     技术分享图片

 

----------

  再提交:

       技术分享图片

 

 -----------

  现在,master分支和feature1分支变成了下图所示:

       技术分享图片

    技术分享图片

 

 

------------

  用带参数的git log也可以看到分支的合并情况:

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

       技术分享图片

      $ git log --graph 

       技术分享图片

 

 

-------------

  最后,删除feature1分支:

      $ git branch -d feature1

    技术分享图片

 

Git 分支管理 解决冲突

原文:https://www.cnblogs.com/mkl7/p/10849817.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!