这是一个多年来被问过很多次的问题。我找到了很多答案,尤其是这个:
Git - 如何在所选文件上强制合并冲突和手动合并(@Dan Moulding)
此页面包含如何设置始终返回失败的合并驱动程序的详细指南,从而使手动合并成为可能。我试图为 Windows 调整该解决方案:
我将以下内容添加到我的%homepath%\.gitconfig
:
[merge "verify"]
name = merge and verify driver
driver = %homepath%\\merge-and-verify-driver.bat %A %O %B
我把驱动改成了
cmd /K "echo Working > merge.log & git merge-file %1% %2% %3% & exit 1"
(echo Working > merge.log
添加来检查驱动程序是否被调用)。
并且,在 repo 的根目录下,创建了一个.gitattributes
包含以下行的文件:
*.txt merge=verify
不幸的是,它不起作用。我试图合并一个文件feature.txt
,唉,合并成功完成。似乎根本没有调用驱动程序,因为没有创建 merge.log 文件。
我做错了什么吗?任何强制手动合并问题的解决方案都是最受欢迎的。