git stash把我代码弄丢了!如何淡定找回

2,331 阅读1分钟

一顿操作,写了两天的新项目,突然接到一个修改之前脚本任务,但是我的新接口还没调试完,于是我git stash了一下,然后切换了分支,又是一顿操作,另一个分支的代码提了pr以后,开开心心回来改接口,git stash pop一下发现

就啥也没有了
我就懵了 然后一顿百度,试了好几种方法都不好使,终于在一顿文档的尝试以后找回来了我心爱的代码!

总结如下: 1、找删除记录,可以查看最近的一些删除的提交

$ git fsck --lost-found

image.png
2、一个个看下提交的hash是不是你丢失的提交记录git show xxx

$ git show e300e385d6a429c6119f2b9a9a2ad0e0f4924d2d

3、如果找到了你当时git stash的代码,那恭喜!再使用git merge xxx

$ git merge e300e385d6a429c6119f2b9a9a2ad0e0f4924d2d

把原本的代码合并回来! 至此,代码就完整找回来了,记得push哦~

但是,虽然解决了代码丢失的问题,我还是没搞懂为啥我的git stash丢了,也没有执行任何clear或者drop的操作,有知道原因的大佬欢迎留言~