如何查看特定分支的歷史記錄?分支的跟蹤歷史
我一直在創建和合並分支機構。但是,在一個特定分支上例如說new_feature
。我想知道已經合併到這個分支的歷史,以及創建了哪個分支?
原因是我有這個new_feature
分支,我想知道其他分支合併到了什麼分支,new_feature
是從哪個分支製成的?
我對使用任何GUI工具(可能是某些命令行)並不感興趣。 我使用Git版本1.7.5.4和Ubuntu 11.10。
如何查看特定分支的歷史記錄?分支的跟蹤歷史
我一直在創建和合並分支機構。但是,在一個特定分支上例如說new_feature
。我想知道已經合併到這個分支的歷史,以及創建了哪個分支?
原因是我有這個new_feature
分支,我想知道其他分支合併到了什麼分支,new_feature
是從哪個分支製成的?
我對使用任何GUI工具(可能是某些命令行)並不感興趣。 我使用Git版本1.7.5.4和Ubuntu 11.10。
git log --oneline --graph --all
可能會給你你想要的,而不需要第三方工具。
--oneline
使提交僅顯示在一行上,而不是更長的默認格式。--graph
顯示帶有ASCII字符的分支/合併歷史記錄。--all
顯示歷史中的所有分支,而不僅僅是當前的分支。我經常使用tig
,它是Git的文本模式存儲庫瀏覽器。但是,Git附帶的gitk
程序對於查看存儲庫歷史記錄也很有用,因爲有時分支之間的界限會變得非常複雜,並且在GUI工具中更容易看到。
對於低級歷史記錄,git reflog
命令將顯示導致當前(或指定)分支頭移動的所有操作。
您只能看到合併提交與git log --merges
。只要你沒有混淆你的合併提交信息,你就會看到你合併了哪些分支。 (如果您不想使用HEAD
作爲起點,請提供提交/分支/標記作爲參數。)使用其他選項按照您的喜好調整輸出 - 請參閱手冊頁。您可能喜歡--oneline
(單行提交摘要)或甚至--pretty=%s
(僅打印提交主題)。你也可能喜歡--first-parent
,它只遵循合併的第一個父母,阻止它從合併分支報告提交。
瞭解什麼分支的分支開始從有點棘手 - 這不是真正的信息被記錄。您可能會發現它作爲git reflog <branch>
輸出中的第一個(底部)條目,如果它足夠近的話。
這也是非常有用的。 git log --decorate = full – ant2009
有一天我會瀏覽所有的git手冊頁。那麼多隱藏的寶石。 (好吧,也許這將需要超過一天...) –
應該是'--all'而不是'-all' – zihaoyu