恢复误删除的git stash记录 (how to retrieve a deleted git stash)

来源:互联网 发布:淘宝订餐 编辑:程序博客网 时间:2024/05/29 16:40

1:使用Git stash或者sourcetree贮藏了工作现场,然后被误删除了这个stash 

2.恢复方法:

a.首先使用git fsck --unreachable命令查找所有unreachable记录,记录的样子大概是这样子的:

unreachable commit 3cf816eeb0dc339513c63dd041e5f4efc6241e24
unreachable blob 5899fee2b9250f6736c256cb88e4c48a6c7f730f
unreachable commit 749e99d0772094a081443e726eff8b561071ca5d
unreachable commit 683ff00bd7a51e03faa02d6ba0946828c3bfa9a8
unreachable blob ef1f6af9bbb4ffb8ee8dcfc51bf2188375c72669

b.第二步,使用git show +<sha>命令会查找你需要恢复的那一条工作现场,sha是上面的key,我们恢复的时候只能恢复unreachable commit 开头的记录,unreach blob是不能用git statsh apply+<sha>来恢复的,会报not a stash-like commit 错误

c.使用git stash apply +<你找到的那条记录的key>恢复即可。

3、除了方法2之外还有如下简介方法:

右击项目(project)——>Local History——>Show History


样式如上图。

选择你要恢复的 时间点 点击工具栏的第一个按钮(revert)即可!

或者右击时间点——>revert



0 0