我已经使用 git stash
git stash
编辑了我的本地文件。我有一些暂存的(和本地提交的)文件,以及一些未暂存的更改(在相同的文件中,我按块暂存)。
然后,我做了一个
git pull --rebase
(因为一些更改是在远程完成的),然后git stash apply
(可能在这里我应该做git stash --index
?)。
不幸的是,我在执行
git stash apply
后丢失了所有未暂存的更改,并且我不知道如何检索它们。我该如何解决这个问题?
编辑:我没有丢失@LeGec 的答案中提到的这些更改。 真正的问题是我已经提交了一些我不应该提交的更改,因此我尝试重置提交,以便仅再次提交需要的内容。在做这一切的同时,我失去了未改变的变化。 只要按照正确的顺序做所有事情就可以解决这个问题
首先也是最重要的:您的存储still包含未暂存的文件,您可以运行
git stash show
或git log --oneline --name-status stash
来查看。
如果
git stash apply
遇到冲突,git会将更改保留在索引(暂存区)中并要求您处理冲突。这可能就是为什么您看到所有更改都已暂存,但没有一个更改列为未暂存的原因。
检查您的
git status
。