SourceTree 回退 Reset to Commit Hard

733 阅读1分钟

问题:

在使用 SourceTree 的时候使用 Reset to Commit 的时候,不小心用到了 Hard 选项(discard all working copy changes),使用完之后想要恢复以前的代码

  1. 例如,有以下三条 commit(test1、test2、test3) image.png
  2. Reset Hard 到第二条 commit(test2) image.png image.png
  3. 此时 test3 完全被重置了,没有任何信息保留,但是后面又需要用到 test3 的相关内容,可以采取以下办法找回 image.png

办法:

  1. 打开 Git 终端 image.png
  2. 输入 git reflog 回车,查看可引用的历史版本记录 image.png
  3. 输入 git reset --hard '要回到的 commit ID' 回车,出现 HEAD is now at '要回到的 commit ID' 'commit message',即操作成功 image.png image.png