在Git合并中查找更改
使用git对分,我发现了罪魁祸首提交-它是一个合并提交(我在主分支上) 我试图隔离错误代码,但合并包含来自合并分支的一些提交,我不知道如何查看合并提交和之前提交(主文件中的前一个工作提交)之间的完整更改在Git合并中查找更改,git,version-control,merge,Git,Version Control,Merge,使用git对分,我发现了罪魁祸首提交-它是一个合并提交(我在主分支上) 我试图隔离错误代码,但合并包含来自合并分支的一些提交,我不知道如何查看合并提交和之前提交(主文件中的前一个工作提交)之间的完整更改 在GIT中有这样做的方法吗?您可以与家长进行GIT差异测试 第一个父级使用SHA1^2,第二个父级使用SHA1^2: git diff mergeSHA1^ mergeSHA1 git diff mergeSHA1^2 mergeSHA1 您可以查看的文档以了解更多详细信息显示提交之间的差异。
在GIT中有这样做的方法吗?您可以与家长进行GIT差异测试 第一个父级使用SHA1^2,第二个父级使用SHA1^2:
git diff mergeSHA1^ mergeSHA1
git diff mergeSHA1^2 mergeSHA1
您可以查看的文档以了解更多详细信息显示提交之间的差异。您想要的变化可能是:
git diff[--options][--][…]
这是为了查看两个任意变量之间的变化
因此,对于您的情况,将合并提交的sha1用于另一个,并将要与之进行比较的提交的sha1用作另一个
git diff <sha1 of the commit to compare to> <sha1 of merge commit>
git-diff
您还可以使用
^
运算符与合并提交的父级进行比较<如前所述,code>sha1^将是第一个父级,sha1^2
将是第二个父级。参数的顺序是向后的,但命令基本上是正确的。使用顺序git diff mergeSHA1 mergeSHA1^
将显示与合并提交和第一个父级的更改相反的更改。我认为原始海报需要未反转的更改,您可以通过git diff mergeSHA1^mergeSHA1
获得。您的回答基本正确,但您可能希望将参数的顺序更改为
,因为原始顺序将显示相反的更改。@coldhawaian已修复,谢谢。我第一次试的时候总是做不好:P
git diff <sha1 of the commit to compare to> <sha1 of merge commit>