一:最新的一次提交
當(dāng)你不小心枝冀,寫錯了提交的注視/信息,該如何處理呢耘子。理論上果漾,SCM是不應(yīng)該修改歷史的信息的,提交的注釋也是谷誓。
不過在git中绒障,其commit提供了一個--amend參數(shù),可以修改最后一次提交的信息.但是如果你已經(jīng)push過了捍歪,那么其歷史最后一次户辱,永遠(yuǎn)也不能修改了。
我使用git commit --amend已經(jīng)push過的
git commit --amend
然后在出來的編輯界面费封,直接編輯注釋的信息,保存退出
二:歷史提交
git使用amend選項提供了最后一次commit的反悔焕妙。但是對于歷史提交呢,就必須使用rebase了弓摘。
git rebase -i HEAD~3
表示要修改當(dāng)前版本的倒數(shù)第三次狀態(tài)焚鹊。
這個命令出來之后,會出來三行東東:
pick:*******
pick:*******
pick:*******
如果你要修改哪個,就把那行的pick改成edit末患,然后保存退出研叫。
這時通過git log你可以發(fā)現(xiàn),git的最后一次提交已經(jīng)變成你選的那個了璧针,這時再使用:
git commit --amend
來對commit進(jìn)行修改嚷炉。
修改完了之后,要回來對不對探橱?
使用git rebase --continue
OK申屹,一切都搞定了。