git reset 记录回滚

  • Post author:
  • Post category:其他


一般的版本回滚都是push完以后发现有错误需要回滚,这里要用到是git reset命令。该命令有3个参数,mixed,soft和hard,下面做简单区别讲解。

  • –mixed

    不删除工作空间的改动代码,撤销 commit 和 add 操作。这个为默认参数,

    git reset --mixed HEAD^



    git reset HEAD^

    效果是一样的。
  • –soft

    不删除工作空间的改动代码,撤销commit,不撤销add。
  • –hard

    删除工作空间的改动代码,撤销 commit 和 add 操作,也就是全部删除。
  • 备注1:HEAD^的意思是上一个版本,也可以写成HEAD~1,如果你进行了多次commit都想撤回,那就把1改成对应的次数。
  • 备注2:HEAD^可以用 commit 的版本号直接替代,commit的版本号可以通过git log查看。

完成操作后,恢复到了什么版本也可以用git log来查看。

确认回撤到你要版本以后,push的时候要用上–force参数,比如

git push --force

,此push的版本就能把中间要回滚的版本覆盖掉。

最后,如果只是想改一下commit的注释注释信息,只需要执行如下命令,就会进入vim编辑器,修改保存即可。

git commit --amend



版权声明:本文为a5nan原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。