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


5

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

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

我该如何解决这个问题?

Answers:


4

听起来你可能不小心为文本文件启用了union merge驱动程序。检查文件类型 merge=union 在任何这些属性文件位置:

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

来自 gitattributes手册页

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

...

内置合并驱动程序

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

文本

通常的3向文件级合并文本文件。冲突的区域标有冲突标记<<<<<<<<<<<<<<<<<<">>>>>>>>。分支中的版本显示在=======标记之前,合并分支的版本显示在=======标记之后。

...

联盟

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


binary 合并驱动程序可以产生同样的问题。
user2845840
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.