繁体   English   中英

我如何看待所有合并(在git合并)中的冲突?

[英]How can I see diffs of all of the conflicts in a mercurial (or git) merge?

这个问题问如何在合并中查看哪些文件有冲突。 我还希望能够快速查看所有冲突的差异列表(与干净进行的合并中的差异相反)。

例如,通过使用--tool :other --tool :local--tool :union解决这些冲突,而无需调出合并编辑器,就可以快速消除那些只是“噪音”的冲突。

我认为答案(我现在正在制定一个答案)与git和mercurial的细微差别类似,因此我冒着将vc不可知的风险。

通常,如果您使用:merge3工具合并或解析,它将在文件中保留标记以防冲突。 文件集unresolved()仅包含有冲突的文件。 使用perl仅打印文件名和未解析的部分(忽略干净合并的部分):

hg merge --tool :merge3 <branchtomerge>
hg diff 'set:unresolved()' | perl -ne 'print if m|^\+\+\+ | or m|<<<+ local$| .. m|>>>+ other$|'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM