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

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

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

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

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

使用 Visual Studio

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

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

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

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

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

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

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

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

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

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

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

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

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


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

查看所有标签

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

Wireshark网络分析实战

Wireshark网络分析实战

[以色列 Yoram Orzach / 古宏霞、孙余强 / 人民邮电出版社 / 2015-1 / 79.00元

本书采用步骤式为读者讲解了一些使用Wireshark来解决网络实际问题的技巧。 本书共分为14章,其内容涵盖了Wireshark的基础知识,抓包过滤器的用法,显示过滤器的用法,基本/高级信息统计工具的用法,Expert Info工具的用法,Wiresahrk在Ethernet、LAN及无线LAN中的用法,ARP和IP故障分析,TCP/UDP故障分析,HTTP和DNS故障分析,企业网应用程序行......一起来看看 《Wireshark网络分析实战》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具