【发布时间】:2019-03-04 11:47:13
【问题描述】:
git mergetool 很棒(在我的例子中,我使用 kdiff3)。但是,无法使用它来解决来自git am 或git apply(甚至使用patch 命令)的冲突。事实上,mergetool 需要 3 个文件才能工作(基本版本和两个修改版本),而 git am 需要修改版本和补丁。
您知道使用git mergetool 处理与git am 产生的冲突的方法吗?
我认为有必要从修改版本和补丁中猜测基础文件。如果单独考虑每个块,看起来很棘手,但并非不可能。
【问题讨论】:
-
git mergetool如果遇到三向合并冲突,应该可以工作。git am运行git apply --3way,它使用git diff输出中的index行来定位或重建(如果可能)这三个对象。如果您发现补丁不适用并且缺少或错误或不足的index行,那么您无能为力。好吧,没有什么是三通的:你可以使用git apply --reject,然后在编辑器中手动按摩被拒绝的部分,就像我们过去在糟糕的过去所做的那样。 ..
标签: git-merge patch mergetool git-apply git-am