在git push的时候,有时候我们会想办法撤销git commit的内容

1、找到之前提交的git commit的id

git log

找到想要撤销的id

2、git reset --hard id

完成撤销,同时将代码恢复到前一commit_id 对应的版本

3、git reset id

完成Commit命令的撤销,但是不对代码修改进行撤销

还有一种方式

git reset --soft HEAD^

仅仅是撤回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编辑器,修改注释完毕后保存就好了。