在git使用中要如何取消commit但是還未push的操作?
通常,我們對修改的檔案會先git add .
,然後git commmit -m "註釋"
,但是如果commit錯了,想要取消commit而且還要保留已經add
的檔案,那麼應該怎麼做呢?
可以使用這個命令來取消commit:
git reset --soft HEAD^
這樣就會回到剛剛add之後的狀態了(HEAD^是上一個版本的意思,如果要回退到前n個,那麼就是HEAD~n)
關於git reset
的一些引數如下:
-
--soft
- 不刪除工作空間改動程式碼,撤銷commit,不撤銷git add .
-
--hard
- 將
add
和commit
撤銷,然後刪除工作空間程式碼,恢復到上一個commit結束時候的樣子
- 將
-
--mixed
- 將
add
和commit
撤銷,但是不刪除工作空間程式碼,恢復到僅僅修改完後的樣子
- 將
如果要修改最近commit的註釋,那麼只需要使用如下命令即可:git commit --amend