git 如何更可靠地解决冲突?

栏目: ASP.NET · 发布时间: 5年前

内容简介:使用 git 合并代码时出现冲突是很常见的,不过如何解冲突才能更加可靠呢?不漏掉别人的修改,也同时让自己的修改完全保留。本文将介绍利用各种工具更可靠地解决冲突。如果你使用 Visual Studio,那么当合并两个分支出现冲突的时候,Visual Studio 的 Team Explorer 会显示当前冲突的所有文件。

使用 git 合并代码时出现冲突是很常见的,不过如何解冲突才能更加可靠呢?不漏掉别人的修改,也同时让自己的修改完全保留。

本文将介绍利用各种 工具 更可靠地解决冲突。

使用 Visual Studio

如果你使用 Visual Studio,那么当合并两个分支出现冲突的时候,Visual Studio 的 Team Explorer 会显示当前冲突的所有文件。

git 如何更可靠地解决冲突? ▲ 图 1

当你点击其中一个文件的 Merge 按钮的时候,会显示这个文件的合并界面。

git 如何更可靠地解决冲突? ▲ 图 2

可以看到,上图中两边的差异非常大。左边的代码进行了某项不为人知的修改,而右边的这些代码都被删除了。如果采用左边,则右边删除移走的代码就会留存,形成两份相似的代码;如果采用右边,那么左边在另一个分支的修改就会丢失。

这时,可以 和基准进行比较 来查看两个分支相对于同样的基准提交的差异来手动解决冲突。

点击合并页面顶部工具栏中的选择比较源按钮,可以切换比较代码的双方。

git 如何更可靠地解决冲突?

你可以比较“源”和“目标”,这也是默认的比较。你还可以选择比较“源”和“基准”、“目标”和“基准”。这样,你可以分别查看两边代码相比于同一个基准提交的修改。

git 如何更可靠地解决冲突?

对于左边的修改,通过查看“源”与“基准”的不同,得知左边其实值修改了一行。那么这时,我们把这一行重新补充到右边删除移走的代码里面(被移到了另一个文件中,需要补充到那个文件中对应的地方),那么两边的修改才真正时等价合并了。

你可以在下图看到这两个不同选项的理解。

git 如何更可靠地解决冲突?


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

软件架构设计

软件架构设计

温昱 / 电子工业出版社 / 2012-7 / 39.00元

《软件架构设计:程序员向架构师转型必备(第2版)》围绕“软件架构设计”主题,从“程序员”成长的视角,深入浅出地讲述了架构师的修炼之道。从“基础篇”、到“设计过程篇”、到“模块划分专题”,《软件架构设计:程序员向架构师转型必备(第2版)》覆盖了架构设计的关键技能项,并且对于架构设计过程中可能出现的各种问题给与了解答。一起来看看 《软件架构设计》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具