重寫Git存儲庫的歷史記錄時,如何刪除簽出(由git commit -s
或git commit --signoff
創建)?重寫Git歷史記錄:如何刪除簽名?
git filter-branch
的commit-filter
似乎只支持git commit-tree
使用的變量:
GIT_AUTHOR_NAME
GIT_AUTHOR_EMAIL
GIT_AUTHOR_DATE
GIT_COMMITTER_NAME
GIT_COMMITTER_EMAIL
GIT_COMMITTER_DATE
EMAIL
謝謝!這可能是刪除特定人員或電子郵件地址的所有簽名或所有簽名的最佳方式。但是,您的特定示例不會在包含「Signed-off-by:」的行之前和之後刪除換行符。我對sed不太熟悉,因爲它沒有很好的文檔記錄而臭名昭着,我只是在這裏注意完整性。 – Mantrum 2010-09-11 18:36:17
@Mantrum是的,這只是刪除簽收線本身。如果您想要在簽出之前刪除多餘的空白行,您必須做一些更復雜的事情;你會想要檢查消息下面是否有其他的尾行(我通常有'Bug:'行來指出它修復了哪個錯誤,有時候'Paired-with:'或者'Review-by'來表示結對編程和代碼審查)。通常在StackOverflow中,答案會指向正確的方向,但您可能需要根據您的確切需要填寫一些細節。 – 2010-09-11 21:24:32