恢复 git stash drop 丢失的内容
git stash drop 之后,stash 的内容并没有立即从系统中彻底消失,在一定条件下是可以找回的。
快速恢复方法
1. 立即查找丢失的 stash
# 查看所有可恢复的提交(包括被 drop 的 stash)
git fsck --unreachable | grep commit | cut -d' ' -f3 | xargs git log --merges --no-walk --pretty=oneline
这会列出所有悬空的 commit 对象,stash 通常显示为 WIP on 分支名。
2. 查看详细的悬空对象
git fsck --unreachable
找到类似 commit 7a9b8c3... 的输出,然后查看该 commit 的内容:
git show 7a9b8c3
如果内容正确,可以恢复为一个新的 stash:
git stash apply 7a9b8c3

浙公网安备 33010602011771号