git 修改歷史訊息

前言
   
之前同事有問,如何修改commit的訊息? 當下不會,所以只好使用其他非正統方式處理....。這次換自己有此需求,順便將此技能修成。


如何修改

有2種情況,需使用不同的方式修改。

1.要修改的訊息為最新的一筆commit

使用--amend 修改
git commit --amend -m "third by amend"

修改後,commit 的ID會重新計算一個新的

2.修改歷史記錄的某一筆。
本例:修改紅框的seond2,綠色指標為待會 rebase的 Commit ID


git rebase -i 4e1d5be

執行後會跳出Vim 編輯器畫面,將第一行的pick改成reword (修改訊息的命令)
  

儲存後,關閉會再跳出另一個Vim 編輯器畫面,此時就可以直接修改你要的訊息了,紅框為我本次加入的



再次查看,結果如下



3.修改第一筆commit (init)
第2點的命令無法修改init的commit,只能修改在它之後的commit。解決如下命令,其他動作一樣。
git rebase --onto HEAD HEAD master


其它參考

這個網誌中的熱門文章

[TFS] 分支與合併