git stash and git pull

我是 Git 的新手,我正在使用 EGit eclipse 插件来提交。

我修改了一些文件,并且隐藏了这些修改,然后在命令行中执行 git pull,它会显示所有最新的提交。然后我做了 Apply stashed changes从 EGit。现在它应用了我的更改,并且从上次提交的隐藏文件中提取的更改被删除了。我不知道为什么它没有问我关于合并冲突的问题,并且覆盖了我的更改,丢失了之前的提交更改。

如何得到这些改变?

160162 次浏览

对工作副本进行更改时,请从命令行执行以下操作:

git stash

这将隐藏您的更改并清除您的状态报告

git pull

这将从上游分支拉动变更。确保报告里写的是快进。如果没有,那么您可能正在进行意外的合并

git stash pop

这将把隐藏的更改应用到工作副本,并从隐藏中删除更改,除非存在冲突。在冲突的情况下,他们将留在隐藏所以你可以重新开始,如果需要的话。

如果你想看看你藏了什么

git stash list

取而代之的是:

git pull --autostash