如何在Git中拉取新文件和更改而不提交我的更改?

10
有没有办法使用git拉取其他人制作的新文件和更改,而不必提交我的更改?我担心我的更改可能会弄乱事情..
2个回答

11
首先,您可以随时使用 git fetch 来从远程仓库加载更改,而不会对您的工作目录或本地分支产生任何影响。
您可能想要执行暂存以保存您的更改,这样您就可以将本地分支更新到最新状态,然后继续处理您的更改。要执行此操作,请使用 git stash 命令。这将临时保存您的更改并 还原 它们,使其看起来好像您没有做任何更改(不用担心,它们仍然被保存在内部)。然后,您只需使用 git pull 命令来更新您的分支并获取最新更改。之后,使用 git stash pop 命令取消暂存您的更改,并将它们取回。
在某些情况下,当您解除暂存时,您可能会遇到冲突,通常是由于您开始编辑文件,而这些文件也在 git pull 中进行了更改。这些文件会获得常规的冲突标记,您可以像往常一样在本地解决它们。

3
git stash -u可以包含未跟踪的文件。虽然分支非常便宜,但我通常使用git checkout -b wip-security-experiment创建一个新的分支,例如。然后可以稍后合并,变基,挑选等等! :) - Adam Dymitruk

5

您可以隐藏您的更改,然后拉取并再次应用您的更改:

git stash
git pull
git stash pop # or apply if you want to keep the changes in the stash

请注意,如果存在任何冲突,git stash pop 将失败,您需要解决这些冲突。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接