我想从一个忽略其分支中的合并的标签做一个git diff。 让我们用一个简单的例子解释我想要的东西
# ~+A git diff running here
#Branch B ______________________|_____________________________________|
# | ^ | |
# +Z | +Y |
# tag1 |merge A Merge B
# |in B |in A
# | |
#Branch A ______________________|___________________v_____________________
# | |
# +A ~+Z
在这种情况下,我希望能够在分支B中使用diff,直到tag1
git diff tag1
问题是我将拥有这个git diff
+A
+Y
我只想要+ Y,因为我希望我的git diff忽略B中A的合并
即使我在分支B中创建了一个临时分支,这个解决方案似乎也行不通,因为我将A中的A和B中的A合并。
如果您已经遇到此问题或者您有好主意解决问题,请告诉我。
答案 0 :(得分:1)
您可以使用--first-parent
的{{1}}和--no-merges
标记到达那里:
命令:
git-log(1)
输出:
user@machine$ git log --no-merges --first-parent --patch-with-stat tag1..HEAD