git stash pop成功后如何恢复我的git stash

git stash pop成功后如何恢复我的git stash,git,git-stash,Git,Git Stash,我在一些文件和一些新文件中进行了更改 git pull:说我在几个文件中有冲突 我做到了: git stash git pull git stash pop 我预料会有冲突,但没有 相反,许多文件现在只是空的。 当前未提交的更改显示从这些文件中删除的所有内容 我看到的解决方案是:克隆存储库。“以某种方式恢复”我最后一次弹出的存储,并将其保存为补丁并应用于那里 如何恢复此文件(不再在存储列表中) 我没有看到最后一个藏匿使用: gitk --all $( git fsck --no-reflog

我在一些文件和一些新文件中进行了更改

git pull
:说我在几个文件中有冲突

我做到了:

git stash
git pull
git stash pop
我预料会有冲突,但没有

相反,许多文件现在只是空的。 当前未提交的更改显示从这些文件中删除的所有内容

我看到的解决方案是:克隆存储库。“以某种方式恢复”我最后一次弹出的存储,并将其保存为补丁并应用于那里

如何恢复此文件(不再在存储列表中)

我没有看到最后一个藏匿使用:

gitk --all $( git fsck --no-reflog | awk '/dangling commit/ {print $3}' )

给出:

error: object file .git/objects/02/7745a5151a6237eb1dcd8e4f0df10328809669 is empty
error: object file .git/objects/02/7745a5151a6237eb1dcd8e4f0df10328809669 is empty
fatal: loose object 027745a5151a6237eb1dcd8e4f0df10328809669 (stored in .git/objects/02/7745a5151a6237eb1dcd8e4f0df10328809669) is corrupt
我该怎么办?发生了什么事?

您是否尝试过使用:

git stash list
你应该有一份你做过的藏品清单。然后,您可以选择要应用的选项:

git stash apply stash@{1}

在您应用隐藏之前,我想您希望在运行第一次git pull之前将头部放在相同的位置。

我发现官方文档有一个解决方案

如果您错误地删除或清除了隐藏条目,则无法删除它们 通过正常的安全机制恢复。不过,你可以试试 下面的咒语可以获取隐藏项列表,这些隐藏项是 仍在存储库中,但无法访问:

git fsck——无法访问|
grep commit | cut-d \-f3|
xargs git日志--合并--无漫游--grep=WIP

git stash apply
不同,如果
git stash pop
成功,它将从隐藏中删除条目。它不会在名单上,是的。成功应用。再也没有了我认为这与git stash
无关,fsck表示您的存储库已损坏
git-stash-pop
没有这样做。你的电脑死机了吗?不,我的电脑没有死机。虽然可能是磁盘损坏问题。我现在该怎么办?现在您需要修复损坏的存储库。关于这个问题,这里有一个问题。
git stash apply stash@{1}