6

比如说,我遇到了合并冲突,我设法修复它,但还没有标记为已解决(即我还没有完成git add冲突文件)。在这一点上,我可以做git diff,我将展示结果文件与每个父文件的不同之处,以组合的差异格式。

到目前为止一切都很好。现在我想分别检查生成的文件与单个父级的不同之处。当然,对于涉及 2 个父母(cherry-pick、rebase 等)的合并冲突,我可以使用git diff --oursor git diff --theirs,但是如何将其扩展到更多父母?

换句话说,如果我与 3 个父母发生冲突,是否可以查看每个父母的个人差异?

此外,我的发现--ours--theirs是相当偶然的。我找不到在差异上下文中记录它们的用法。

4

1 回答 1

1

如果

git diff :1:foo.txt :3:foo.txt

不做你想做的,我猜你必须做

git ls-files -u

以及git show $sha1 > $sha1.txt用于创建一些临时文件并进行比较。

另请参阅:Git 将冲突文件的“基本”版本与“他们的”版本进行比较?

于 2017-07-06T09:28:12.163 回答