在开发中经常需要reset分支,如果在reset前没有记住分支指向的提交ID,想要重置回原来的提交恐怕大多数开发者是重新拉取远程版本库,再rebase分支。但如果连不上远程版本库或没有远程版本怎么办呢?git提供了一个挽救机制,git日志记录了分支的所以本地变更,通过它即可找回原来的代码。
下面我们来演示一下:
先查找本地操作日志:
git reflog show dev
上图可以看到我们有个错误的reset,下面的命令即可恢复到reset前的状态:
git reset --hard dev@{4}
想回复到那个位置改写日志标识即可