2

我有一堆暂存文件-其中一些是new file,其中一些是modified。我这样做git stash save "message"了,所有这些都被藏起来了。没关系。但是当我这样做时git stash pop,突然只有new file文件被暂存modified而没有。这是为什么?

4

1 回答 1

6

git stash pop以这种方式将已暂存和未暂存(工作目录)更改混合在一起。

git stash pop --index如果可以的话,将它们分开(有时由于现有的分阶段的东西或合并状态,这是不可能的)。

将所有东西混合在一起之后git stash pop,要找回丢弃的存储空间是相当困难的(并非不可能,但通常不值得),以便您可以再次尝试使用--index. 出于这个原因,我认为人们应该养成使用git stash apply(带或不带--index)的习惯,然后git stash drop一旦他们对结果感到满意。如果你apply,存储仍然在那里,所以你可以git reset --hard HEAD撤消它并--index在你想要的时候重试。--index(当您混淆and时,这特别有用--keep-index,这一直发生在我身上。:-))

于 2013-09-18T09:13:04.677 回答