Git隐藏后,一些文件消失了

Git隐藏后,一些文件消失了,git,Git,我在查目录。自从上次提交后,我做了一些修改。我想忽略所有这些修改(在我上次提交之后)。很快,我想收回我的最后一次提交。我不小心执行了错误的命令,我执行了以下命令: git stash Saved working directory and index state WIP on master: 46dbc13 Ayarlar activity geri butonu HEAD is now at 46dbc13 Ayarlar activity geri butonu 在此之后,我的大部分文件(

我在查目录。自从上次提交后,我做了一些修改。我想忽略所有这些修改(在我上次提交之后)。很快,我想收回我的最后一次提交。我不小心执行了错误的命令,我执行了以下命令:

git stash
Saved working directory and index state WIP on master: 46dbc13 Ayarlar activity geri butonu
HEAD is now at 46dbc13 Ayarlar activity geri butonu
在此之后,我的大部分文件(我所有的图像文件)都消失了。但它们在我上次提交(#46dbc13)时就已经存在了。它们在我藏匿之后被删除了。我不知道。我已经执行了
git stash apply
,但没有任何更改


你能告诉我发生了什么吗?

git stash
是一种“将更改放在一边”的机制。我发现当你在编写新的功能的时候,它经常使用,但是必须切换到更高的优先级。 如果您想查看您的存储列表,可以使用
git stash list
查看类似以下内容:

git stash list
stash@{0}: WIP on master: 46dbc13 Ayarlar activity geri butonu
如果要应用更改,必须使用以下两个命令之一:

Pop
:这将弹出堆栈顶部的存储

git stash pop
“应用”:这将应用给定的存储。如果您的
git存储列表
只有一个存储(如上所示),那么您可以使用它。如果有多个存储,则需要应用希望应用的特定存储

git stash apply stash@{0}

我和@kostix同时找到了答案

git reset --hard 46dbc13

解决了我所有的问题。我在这里找到了这个命令:

这个问题提出已经5年了,但这个答案可能对当代成员有益

我写这个答案是为了那些面临同样问题并使用(或将使用)NetBeans IDE的人

解决方案: 在NetBeans中,单击项目名称,然后从主菜单中选择Team=>History=>Revert Deleted。 稍等片刻,NetBeans将列出以前删除的文件。选择所需的,然后单击“确定”


就这样,无需使用任何命令,感谢NetBeans提供了这个实用的解决方案

正如我所说,我不是想把我的工作藏起来。我想重新设置。我不小心藏了起来,我的文件消失了。所以使用
git stash apply stash@{0}
文件应该会回来:)
git reset
是另一个主题。也许您可以编辑问题和标题,以便更清楚地表达您的意图。因此,与其说“我做了这件事,结果并不是我想要的”,不如说“我想做这件事……我该怎么做”
git stash
不会删除上一次提交中的任何内容(调用
git stash
时的
HEAD
),因此您一定做了其他事情。
git日志是否将46dbc13列为提示提交?如果是,那么只需执行
git reset--hard
--这将使用
HEAD
的内容重新填充索引和工作树,即(假定)46dbc13。这必须将您的被删除文件带回来。如果没有,那就是你误解了情况或者没有告诉我们足够的细节。