3

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

<<<<<<< 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 中似乎很常见。

4

2 回答 2

4

Git将此称为“冲突标记”

Git 会自动将冲突标记添加到受影响的区域。有冲突标记的区域以 <<<<<<< 开始,以 >>>>>>> 结束。这些也称为冲突标记。两个冲突的块本身被 ======= 划分。

Mercurial 使用类似的措辞

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

非分布式系统?Subversion 使用“冲突标记”

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

它们的祖父 CVS 也称它们为冲突部分

在有冲突的文件中,有一个或多个冲突部分。每个都以“<<<<<<<”开头,然后是在本地文件中找到的部分(或者如果您正在执行合并,则为 cvs checkout 的第一个参数),然后是“====== =",然后是另一个冲突版本,然后是 >>>>>>>>"。

似乎“冲突标记”是引用这些的常用方法。这些文档中有些是官方的,有些是由第三方制作的,但它们都使用相似的措辞。

于 2015-04-26T16:13:55.780 回答
0

作为公认答案的补充:这些标记也被 diff3 工具使用,因此这种特殊的语法有时被称为“diff3 冲突标记”。

于 2015-04-26T18:09:55.357 回答