1. 程式人生 > 其它 >git使用情景:commit之後,想撤銷commit

git使用情景:commit之後,想撤銷commit

寫完程式碼後,我們一般這樣

git add . //新增所有檔案

git commit -m "本功能全部完成"


執行完commit後,沒有push,想撤回commit,怎麼辦?


可以這樣:

git reset --soft HEAD^

(也可以 git reset --soft +commitId


這樣就成功的撤銷了你的commit

注意,僅僅是撤回commit操作,您寫的程式碼仍然保留。


說一下個人理解:
HEAD^的意思是上一個版本,也可以寫成HEAD~1

如果你進行了2次commit,想都撤回,可以使用HEAD~2


至於這幾個引數:
--mixed
意思是:不刪除工作空間改動程式碼,撤銷commit,並且撤銷git add . 操作
這個為預設引數,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一樣的。

--soft
不刪除工作空間改動程式碼,撤銷commit,不撤銷git add .

--hard
刪除工作空間改動程式碼,撤銷commit,撤銷git add .

注意完成這個操作後,就恢復到了上一次的commit狀態。

順便說一下,如果commit註釋寫錯了,只是想改一下注釋,只需要:
git commit --amend

此時會進入預設vim編輯器,修改註釋完畢後儲存就好了。
————————————————
版權宣告:本文為CSDN博主「天空還是那麼藍」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處連結及本宣告。
原文連結:https://blog.csdn.net/w958796636/article/details/53611133