背景

在写代码时,写了很久的代码,git add 后,发现有一点东西还要改,想退回来加上后一起提交,就脑抽执行了一下 git reset --hard,然后就 @#$%^*&… 了

这时候就去 网上找有没有补救方案,后来还真找到了

可以分为3中情况

  1. git add 过,也 git commit

    可以使用 git reflog 找到对应的 commit,然后回退到对应的 commit id

  2. git add 过,没 git commit

    可以用以下方法恢复,先执行

    git fsck —lost-found
    

    然后进入到项目中的 .git/lost-found/other 目录下

    该目录下的文件用 vscode 或其他代码编辑器打开就可以看到你 git add 过后的文件的长相啦

    然后将对应的文件覆盖掉之前没改动之前的文件就行了

  3. git add 过,也没有 git commit

    那我就只能祝你好运了,阿门