背景:當(dāng)我們將commit提交到遠(yuǎn)端后,發(fā)現(xiàn)提交的commit message并不符合規(guī)范,需要修改亥鸠,就需用到以下方法進(jìn)行修改。
1.修改最近一次提交commit message
直接使用命令 git commit --amend 進(jìn)入 vi編輯模式
按i進(jìn)入編輯模式,直接修改commit信息涕侈, 按esc再:wq保存退出
git push 到遠(yuǎn)程倉(cāng)庫(kù)
2.修改歷史commit message
先使用git log 查出你所需要修改的commit位置裳涛,比如倒數(shù)第三條
使用命令:git rebase -i HEAD~3 (其中3就是commit倒數(shù)位置)進(jìn)入vi編輯頁(yè)面
其中g(shù)it log中倒數(shù)第n條就顯示在該編輯頁(yè)面的最新第1條
按i進(jìn)入編輯模式调违,將需要更改的commit的pick改成e/edit泻轰, 按esc再:wq保存退出
如遇到:(dev|REBASE 1/3)浮声,則只需在需要修改的rebase序號(hào)(此處就是1)是執(zhí)行g(shù)it commit --amend
進(jìn)入VI編輯頁(yè)面泳挥,修改commit信息屉符, 按esc再:wq保存退出
然后執(zhí)行g(shù)it rebase --skip跳過(guò)不需要修改的rebase分支矗钟,執(zhí)行成功吨艇。
最后執(zhí)行g(shù)it rebase --continue命令完成rebase修改
最終push 到遠(yuǎn)程,至此东涡,修改完成疮跑。
tips: 若進(jìn)行到(dev|REBASE 1/3),中的一個(gè)階段想退出此流程,執(zhí)行命令git rebase --abort退出rebase 到主分支
mention:
push 到遠(yuǎn)端時(shí)祖娘,若執(zhí)行g(shù)it push, 則只會(huì)在之前的commit記錄后追加一條記錄,但不會(huì)更新之前的commit信息
若執(zhí)行g(shù)it push -f 雹仿,強(qiáng)制推送整以,則會(huì)更新之前的舊commit信息,進(jìn)行覆蓋
轉(zhuǎn)載需標(biāo)明出處