当前位置:   article > 正文

​执行git commit​后如何撤销_撤销 git commit

撤销 git commit

git commit后,还没执行push时, 如何撤销commit

git add xxFiles

git commit -m "add xxx commit"

 一、解决方案

1. git reset --soft HEAD~1
执行此命令,本次的(这里HEAD~1)commit会被撤销,commit所对应的修改会撤回到暂存区当中,即只是撤销了commit操作,比较安全,修改不会丢失

git restore --staged 修改的文件,这样可以取消暂存(git add 文件)的文件。

2. git reset --mixed HEAD~1
执行此命令,本次的commit会被撤销,commit所对应的修改会撤回到修改区(工作区)当中,即同时撤销了commit和add操作,修改也不会消失。需要注意的是,当直接执行git reset HEAD~1时,参数默认就为mixed。

3. git reset --hard HEAD~1
执行此命令,本次的commit会被撤销,commit所对应的修改会撤回到原始状态,即修改将会全部消失,文件恢复到了上一次commit的状态,比较危险 。

二、命令解释:

1. HEAD^

表示上一个版本,即上一次的commit,几个^代表几次提交,如果回滚两次就是HEAD^^。
也可以写成HEAD~1,如果进行两次的commit,想要都撤回,可以使用HEAD~2。

2. --soft
不删除工作空间的改动代码 ,撤销commit,不撤销add。 

3. --hard
删除工作空间的改动代码,撤销commit,且撤销add。 

4. --amend 

如果commit后面的注释写错了,可以运行 git commit --amend,进入vim编辑模式,修改完保存即可。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小桥流水78/article/detail/918908
推荐阅读
  

闽ICP备14008679号