将更改从一个客户端推送到远程存储库后,如何将它们放入另一个客户端的工作区?

After pushing changes from one client to a remote repository, how can I get them into the workspace of another?

每次我将 git 存储库中的更改推送到暂存服务器时,我必须使用以下命令来完成覆盖更改。

git fetch --all && git reset --hard origin/master

为什么我不能 git fetch

如果您想要提取更改,您需要使用 git pull 而不是 git fetch。 fetch 只会将更改下载到存储库中(并更新远程分支)。它不会更新工作区。

git pullgit fetch && git merge <branch> 的快捷方式。例如参见 [​​=18=].

我通常使用 alias fe = fetch --all -v -progress -p,而我 运行 经常只是为了看看会发生什么变化和差异。这可以不假思索地完成,因为它不会触及您的工作区,需要合并或类似的(这就是为什么 git fetch 是一个有用的命令,即使它对工作区没有明显影响)。例如,它确实可以帮助 git status,因为它可以告诉您,您在远程分支后面(并且需要 运行 git pull --ff-only 或类似的)。