这是如何列出分支上的提交记录但不包括已合并的分支的逆向操作,因此我将以相同的格式提问。假设我的git提交历史记录如下:
如何列出
我曾经以为可以运行
A---B---C---D---E---F master
\ /
X---Y---Z topic
如何列出
topic
分支上的提交记录--也就是X
、Y
和Z
?请注意,仅仅执行git log topic
是行不通的--这将返回提交A
和B
。我曾经以为可以运行
git merge-base topic master
来找到B
,然后执行git log B..Z
来获取这些提交记录。不幸的是,git merge-base topic master
返回的是Z
而不是B
,这在回顾时是有道理的--因为Z
已经合并到了主分支,所以在topic
和master
之间共享历史的第一个提交是Z
。