Git 分支管理 解决冲突

Posted mkl7

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git 分支管理 解决冲突相关的知识,希望对你有一定的参考价值。

  

 

 

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

  准备新的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 分支管理 解决冲突的主要内容,如果未能解决你的问题,请参考以下文章

Git 代码分支管理

GitGit 分支管理 ( 解决分支合并冲突 | 本地处理文件冲突 )

GitGit 分支管理 ( 解决分支合并冲突 | 本地处理文件冲突 )

git如何避免代码冲突

GitGit 分支管理 ( 解决分支合并冲突 | 创建并切换分支 git switch -c feature1 | 修改 feature1 分支并提交 | 修改 master 主版本并提交 )(代码片

GitGit 分支管理 ( 解决分支合并冲突 | 创建并切换分支 git switch -c feature1 | 修改 feature1 分支并提交 | 修改 master 主版本并提交 )(代码片