2009-09-13 55 views
3

git log列出所有已合併到HEAD中的分支的所有提交。我想得到一個合併列表,所以我可以看到哪個分支已經合併到這個合併中,以及何時合併。如何獲取分支的合併日誌?

我怎樣才能得到這些信息?我正在尋找除「啓動gitk並查看圖表」之外的其他內容,因爲我知道其中之一,但對於有很多分支的非常大的歷史記錄,這並不能很好地擴展。文本查詢的文本結果可能是理想的。

+0

@Andrew,如果你有git1.6.4,你可以考慮Jakub的答案是官方的答案。他確實知道他的混帳。 – VonC 2009-09-14 08:42:52

+0

同意。這是你提供的慷慨。 – 2009-09-14 13:50:07

回答

4

隨着現代GIT中(如果你的版本1.6.4或更新你有這樣的),你可以使用簡單的

 
$ git log --merges 

如果你想看到的只是合併到當前分支,可以添加--first-parent選項:

 
$ git log --merges --first-parent 
+0

非常好!我應該仔細閱讀這些發行說明;)+1 – VonC 2009-09-14 08:41:40

2

this thread,打了一下,用git log

$ git log --no-walk $(git rev-list --parents HEAD | sed -n "s/ .* .*//p") 

會給你,因爲在資源庫中的最後一個標籤合併的列表。
雖然沒有完全測試自己。

+0

它似乎順利通過最後一個標籤,但這正是我想要的。命令的複雜性證明了git的靈活性,但它也是*複雜性*。 :| – 2009-09-14 04:01:26

+3

或者你可以使用Git版本1.6.4或更新版本的'git log --merges'。 – 2009-09-14 08:32:30