Git 未使用合并驱动程序

Git merge driver is not used

我有两个分支 b1 和 b2,如下所示:

我的仓库
|- .git
|---|- 配置
|- .git属性
|- D1
|---|- foo.xml

在git\config中,我有这样的配置:

[merge "MyMerger"]
    name = My merger
    driver = MyMerger.exe %B %A %O

MyMerger.exe存在于Path环境变量

然后,在 .git 属性中,我有这个:

/D1/foo.xml merge=MyMerger

但是当我尝试合并 B1 和 B2 以及两个分支中 foo.xml 的更改时,它失败了:

自动合并D1/foo.xml
CONFLICT(内容):合并 D1/foo.xml
中的冲突 自动合并失败;解决冲突,然后提交结果。

我还尝试使用此配置移动 D1 中的 .git 属性:

foo.xml merge=MyMerger

但它也失败了。

我错过了什么?

谢谢

我相信您必须具有 merge.toolmergetool 配置才能设置自定义合并工具。

查看此 post,它提供了您 运行 所需的确切 git config 命令:Git on Windows: How do you set up a mergetool?

只要你的 .gitattributes 中没有 BOM,我的初始配置就可以正常工作