是否有Git使用的合并冲突语法的名称?

时间:2015-04-26 16:09:01

标签: git version-control tfs dvcs source-control-explorer

当一个人发生冲突时,冲突会在文件中标记为:

<<<<<<< HEAD
    <p>Once she climbed a tree and then forgot how to climb back down again</p>
=======
    <p>Once, forgot where her food bowl was and was hungry all day</p>
>>>>>>> prequel

这个语法有名字吗?它似乎在VCS中很常见。

2 个答案:

答案 0 :(得分:4)

Git称之为"conflict markers"

  

Git会自动将冲突标记添加到受影响的区域。冲突标记区域以&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;并以&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;结尾。这些也被称为冲突标记。两个冲突的块本身除以a =======。

Mercurial使用similar wording

  

此时,会发生什么取决于如何配置Mercurial(请参阅MergeToolConfiguration)。默认情况下,Mercurial会将一组标记插入要在工作副本中合并的文件中:

非分布式系统? Subversion使用"confict markers"

  

小于号,等号和大于号的字符串是冲突标记,并不是冲突中实际数据的一部分。

他们的祖父,CVS,也称他们为conflict sections

  

在有冲突的文件中,有一个或多个冲突部分。每个都以&#34;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&#;&#34;开头,然后是您在本地文件中找到的部分(或者如果你&#39;那么cvs checkout的第一个参数。重做合并),然后是&#34; =======&#34;,然后是其他冲突版本,接着是&#34;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; ;&#34;

似乎&#34;冲突标记&#34;是引用这些的常用方法。其中一些文档是官方的,一些是由第三方制作的,但它们都使用类似的措辞。

答案 1 :(得分:0)

作为已接受答案的补充:diff3工具也使用这些标记,因此这种特殊语法有时称为&#34; diff3冲突标记&#34;。