在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