GIT撤销本地commit但是未push的代码

GIT撤销本地commit但是未push的代码

Reset Type:

  • mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息
  • soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
  • hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容

使用reset --soft --hard命令操作

  • soft:仅仅将头指针恢复,已经add的缓存以及工作空间的所有东西都不变。
  • mixed:将头恢复掉,已经add的缓存也会丢失掉,工作空间的代码什么的是不变的。
  • hard:一切全都恢复,头变,aad的缓存消失,代码什么的也恢复到以前状态。

在idea的Terminal中 输入以下代码,执行成功后无任何提示

git reset --soft HEAD~1

使用ID号重置

使用git reflog检查哪个提交是合并之前的提交( git reflog比git log更好的选择)。 然后您可以使用以下方法重置它:

git reset --hard commit_sha

还有如下方法

git reset --hard HEAD~1

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