git reset --hard 恢复
- 如果你没有执行过 git add 。那就重新写代码。
- 有执行 git add ,但没有执行 git commit
git fsck --lost-found
: 查看悬空。可以查看由 git add 没有 git commit 的文件。
再执行:
find .git/objects -type f | xargs ls -lt | sed 60q
60可以修改为你想要的数字。
它存在 .git/lost-found/other 目录下。
打开文件,就是你已经 git add 过的文件了。 - 有执行过 git commit
- 可以使用
git reflog
命令查看提交,然后选择你需要恢复的提交,执行git reset --hard XXXXXX
,就可以恢复到 XXXXXX。 - 如果在恢复到 XXXXXX 的同时保留修改的文件,可执行
git reset --soft XXXXXX
,那么 XXXXXX 到 HEAD的修改文件,会保存在当前缓存中。
- 可以使用