2011-07-11 61 views
3

我有如下一個git提交模板:git的日誌,從提交郵件的正文附加細節

[overtype with subject line up to 50 chars ----->] 

[overtype with details of what's in the commit] 

[other information] 
Ticket-Refs: 

我想之後的字符串追加「票證參考文獻:」到git log graph --pretty=format:

我試圖使用--grep=來實現這個%b%B,任何幫助將不勝感激。

回答

1

絕對不是最優雅的方式,但這裏有一個選項:

$ git log --graph --grep=Ticket-Refs --pretty=format:'DELIMITER_STRING%B' | grep '\*.*DELIMITER_STRING\|Ticket' | sed s/DELIMITER_STRING.*// 

或者另一種選擇

$ git log --graph --grep=Ticket-Refs --pretty=format:'DELIMITER_STRING%b' | grep '\*.*DELIMITER_STRING\|Ticket-Refs' | sed ':a;N;$!ba;s/DELIMITER_STRING.*Ticket-Refs://' 

我無恥地偷走了一些代碼的第二種選擇從another post

1

我知道我不會給一個確切的答案,但如果你能票證裁判的一部分轉移到git notes,即使用注意事項添加到提交類似如下:

git notes add sha -m "Ticket-refs:blah" 

,那麼你可以很容易地做圖形日誌像你想:

git log --graph --format="%N" 

否則,我不知道是否有可能單獨提取部分,然後用圖形使用它。

+0

我看了一下,但我想嘗試並在git commit消息中包含它,它會在沒有圖形的情況下工作嗎? – Cellze

+0

@Cellze沒有圖表的意思是什麼?如果你的意思是如果你在日誌中得到筆記,是的,普通的'git log'會顯示筆記以及其他提交信息。 – manojlds

+0

你提到不能將它與圖形一起使用 - 我只是問圖形屬性是否是問題。我不想將回購遷移到使用筆記,但感謝您的答案絕對應該看起來使用這從起始。 – Cellze