我毫无理由地打了三次git stash pop。我该如何撤消这个?

时间:2017-09-28 15:32:44

标签: git

我已经养成了使用array ( 0 => array ( 0 => 'div', 1 => 'div', 2 => 'div', 3 => 'div', ... ) ) / git stash功能的习惯,因为当我在另一个分支上做某事时,我会得到随机请求来修复工作。< / p>

今天早上我决定从一个我正在另一个分支上工作的项目开始。我不记得是否有任何东西被藏起来所以我打电话给git stash pop。令人费解的是,我又打了两次电话。我不知道我做了什么,但我想撤消它。我该怎么办?

谢谢!

2 个答案:

答案 0 :(得分:1)

运行git stash pop只会更改您的工作目录;它不会对您的存储库进行任何更改。您可以通过运行:

将工作目录的状态恢复到运行git stash pop之前的状态
git reset --hard HEAD

这会将您的工作目录还原为存储库的当前HEAD。不过,你会丢失你的藏匿处。

从工作流程的角度来看,不要害怕只是将更改提交到您的分支而不是使用git stash:您可以在与任何人共享提交之前编辑提交。

答案 1 :(得分:0)

您丢失了stashes,我认为没有任何更简单的方法可以将它们带回来。就清理工作目录而言,只需执行

git stash # again

or 

git checkout -f # if you're not interested in keeping any stash changes

作为建议,请始终选择git stash apply而不是git pop