首先要分情况:
- 被覆盖的代码已经在本地commit 用
git reflog
- 被覆盖的代码未commit(期望本地历史记录里有,否则就真丢了)
被覆盖的代码已经在本地commit
git reflog
d6d34b1 HEAD@{0}: checkout: moving from dev_01 to develop
d6d34b1 HEAD@{1}: checkout: moving from develop to dev_01
d6d34b1 HEAD@{2}: checkout: moving from dev_01 to develop
恢复命令
git branch 19984e3 HEAD@{15}
被覆盖的代码未在本地commit
尝试使用IDEA的local History (Eclipse也有类似的本地历史记录)
项目上右键
然后找到丢失的内容 Revert Selection
或者双击文件,有选择性的保留代码
参考链接
https://www.jianshu.com/p/4d3a48ba4200
https://blog.youkuaiyun.com/yeluosc/article/details/76690678