有没有办法以冲突解决总是通过外部合并工具的方式配置 git merge ?
我正在为semanticmerge 编写配置,有些情况下git 处理不正确,但可以通过semanticmerge 正确解决: * 两个开发人员在同一个文件的两个不同位置添加了相同的方法。
问题是 git merge 说冲突是自动的,所以 git mergetool 不能被调用。
谢谢。
有没有办法以冲突解决总是通过外部合并工具的方式配置 git merge ?
我正在为semanticmerge 编写配置,有些情况下git 处理不正确,但可以通过semanticmerge 正确解决: * 两个开发人员在同一个文件的两个不同位置添加了相同的方法。
问题是 git merge 说冲突是自动的,所以 git mergetool 不能被调用。
谢谢。
请参阅gitattributes的文档。深层是一个名为“merge”的属性,它设置匹配文件的合并方法。
因此,例如,您可以.gitattributes
在项目的根目录中有一个文件,其中包含:
*.fancy merge filfre %O %A %B %L %P
这将使用filfre
程序进行合并。它调用程序
合并驱动程序应使用合并中的合并结果覆盖 %A。
该文档中有一节以“定义自定义合并驱动程序”为标题,建议用于全局设置合并工具
[merge "filfre"]
name = feel-free merge driver
driver = filfre %O %A %B %L %P
recursive = binary
放置在您的 git 配置中,例如,.git/config
或$HOME/.gitconfig
.