是否有我可以用于合并冲突的git钩子?在git merge
失败之后,能够编写一个脚本打开$EDITOR
中所有有冲突的文件将是很棒的。不幸的是,如果发生冲突,post-merge
挂钩不会运行,并且从githooks
手册页中看到的情况来看,没有其他适用的挂钩。
我想知道我是否错过了某些内容,或者是否还有其他选择,除了将'git merge'别名为函数或类似内容之外。
谢谢,克里斯
如查尔斯·贝利(Charles Bailey)所建议,最好的方法是自定义mergetool。使用this guide,我想到了一种简单的方法来在编辑器中打开合并冲突:
[merge]
tool = emacs
[mergetool "emacs"]
cmd = $editor \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"
由于查尔斯·贝利(Charles Bailey)从未回答过我该如何称赞他,我希望这是最终解决这个问题的适当方法。
我认为可能有两种方法,就像您提到的那样,您可以编辑您的mergetool或使用以下方法创建另一个别名:
for i in $(git ls-files -u | cut -f 2 | sort -u); do $EDITOR $i; done