我找到了一个有关如何实现git merge驱动程序的出色示例: https://github.com/Praqma/git-merge-driver
为了节省一些点击次数,其目的是创建一个合并脚本,更改.gitconfig并更改.gitattributes以将其用于某些文件。
merge-driver.sh
echo "ancestor: $1"
echo " current: $2"
echo " other: $3"
echo "This is the merge result" > $2
echo "Conflict resolved!"
echo "resolved: $2"
cat $2
exit 0
.gitconfig
[merge "my-custom-driver"]
name = Custom Driver
driver = merge-driver.sh %O %A %B
.gitattributes
*.mrg merge=my-custom-driver
我的问题是:我想在解决冲突之前调用Git默认的合并驱动程序,如果没有正确退出,那么我可以检查<<< === >>>
冲突并尽可能解决。
那么,如何手动调用git default merge driver?
答案 0 :(得分:1)
...如何[如何]手动调用git default合并驱动程序?
您不能-不完全是。问题是在低级合并处理中,默认合并驱动程序直接内置在git merge
中。替代方法是调用内置合并处理或调用自定义驱动程序,如果您选择了自定义驱动程序,则默认合并处理替代方法已被拒绝并且不再可用。
幸运的是,Git中内置了一个程序,它几乎与默认合并驱动程序一样好,甚至更好(它具有默认驱动程序缺少的一个选项)。该程序分别命名为git merge-file
和it is documented。如果为它提供正确的参数集,它将实现与默认合并驱动程序几乎相同的功能。
如果它认为解决了冲突,它将退出零;否则,将退出非零。