最佳答案
从一个分支被分支到当前分支之后,最好的方法是什么?目前我的解决方案是:
git log $(git merge-base HEAD branch)..branch
git-diff的文档表明git diff A...B
等价于git diff $(git-merge-base A B) B
。另一方面,git-rev-parse的文档指出r1...r2
被定义为r1 r2 --not $(git merge-base --all r1 r2)
。
为什么这些不同呢?注意,git diff HEAD...branch
给了我想要的差异,但对应的git日志命令给了我更多。
在图片中,假设:
x---y---z---branch / ---a---b---c---d---e---HEAD
我想要得到一个包含提交x y z的日志。
git diff HEAD...branch
给出了这些提交git log HEAD...branch
给出x, y, z, c, d, e。