2012-10-11 40 views
4

我需要從所有分支檢索所有提交。我使用命令檢索它們:Git:如何在沒有註釋的情況下從所有分支中檢索所有提交?

git log --pretty="%H %f" --all 

但在這種情況下,Git會將所有提交的提交返回給我(如果存在)。我試圖用類似下面:

git log --pretty="%H %f" --all --no-notes 

它看起來像命令「--all」覆蓋「--no-筆記」什麼都不會發生。

請指教如何從所有分支機構取回所有提交而無需註釋?

P.S.是的,我可以執行「git notes」,解析它們,然後從「git log --all」中減去,但在我看來,對於這樣一個微不足道的情況應該有一個更簡單的解決方案。

回答

2

正如你所說,--all覆蓋--no-notes。所以你可能想分割--all只包括你想要的參考。如果你只是想顯示所有的分支:

git log --pretty="%H %f" --no-notes --branches 

,或者如果您想了解更多:

git log --pretty="%H %f" --no-notes --branches --tags --remote 
+0

謝謝!這正是我正在尋找的! –

0

這不是很漂亮,但不是--all,你可以這樣做:

git log --pretty="%H %f" `git for-each-ref --format="%(refname)" | grep -v refs/notes` 

或以其他方式列舉只是要記錄的裁判,如果你有很多分支可以是可以理解的繁瑣/標籤...

相關問題