解决 GIT 中的合并冲突时没有箭头/标记

alf*_*_80 6 git

我目前遇到合并冲突,通常我只能手动编辑它们。但是现在,我的问题是文件没有显示任何我可以编辑的箭头/标记(>>>>、<<<<< 和 ====)。

问题是我可能有很多未提交的更改,而且还有一个新添加的文件和一个新创建的二进制文件。

我该如何解决?

Ste*_*ngs 5

听起来您可能不小心为文本文件启用了联合合并驱动程序。检查merge=union在以下任何属性文件位置中的文件类型:

  • .git/info/attributes”在存储库中
  • .gitattributes”在存储库中
  • core.attributesfile选项引用的文件(运行git config --list

gitattributes 手册页

merge当 git 合并期间需要文件级合并时,该属性会影响文件的三个版本的合并方式,以及其他命令,例如 git revert 和 git cherry-pick。

...

内置合并驱动程序

定义了一些内置的低级合并驱动程序,可以通过合并属性请求它们。

文本

通常用于文本文件的 3 路文件级合并。冲突区域用冲突标记 <<<<<<<、======== 和 >>>>>>> 标记。来自您分支的版本出现在 ======== 标记之前,来自合并分支的版本出现在 ======= 标记之后。

...

联盟

为文本文件运行 3 路文件级合并,但从两个版本中提取行,而不是留下冲突标记。这往往会以随机顺序在结果文件中留下添加的行,用户应该验证结果。如果您不了解其含义,请不要使用它。