问题描述

偶尔会遇到已经完成了commit还没有push,突然需要再改一下的情况。

解决办法

方法一

1.查看历史提交记录,找到本次commit之前的节点

  1. git log

image.png
2.撤销

  1. git reset 节点值

方法二

  1. git reset --soft HEAD^

参数说明

“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状态。