更新 origin/master 分支而不检查该分支
update origin/master branch without checking that branch out
我假设:
git fetch origin
将更新所有远程分支:
remotes/origin/master
remotes/origin/dev
等等
但事实证明似乎并非如此,如果不是这样的话,我无法弄清楚这些分支是如何保持最新的。
如何确保我的本地远程分支是最新的?也许我会有更好的运气:
git fetch origin master:master
?
一般来说,git fetch origin
会更新origin/*
下的所有远程跟踪名称。在什么情况下您没有看到这种情况发生?现代有两种常见的情况 Git:
一个单分支克隆将一个上游分支映射到一个远程跟踪名称。如果那不是你想要的,请避免单分支克隆(或将它们转换为普通克隆)。
运行 git fetch origin master
,例如,将更新限制为仅更新 origin/master
,即使 dev
在 [=15] =] 有新的提交会更新 origin/dev
如果你有 运行 git fetch origin
而不是 git fetch origin master
.
第二种情况一直由 git pull
驱动,如果您使用它的话。 (我建议避免 git pull
以支持单独的获取和第二个命令,根据需要变基或合并。)
最后一种情况在 1.8.2 之前的 Git 版本中很常见,例如 git fetch origin master
甚至无法更新 origin/master
。解决方案是升级到现代 Git.
我假设:
git fetch origin
将更新所有远程分支:
remotes/origin/master
remotes/origin/dev
等等
但事实证明似乎并非如此,如果不是这样的话,我无法弄清楚这些分支是如何保持最新的。
如何确保我的本地远程分支是最新的?也许我会有更好的运气:
git fetch origin master:master
?
一般来说,git fetch origin
会更新origin/*
下的所有远程跟踪名称。在什么情况下您没有看到这种情况发生?现代有两种常见的情况 Git:
一个单分支克隆将一个上游分支映射到一个远程跟踪名称。如果那不是你想要的,请避免单分支克隆(或将它们转换为普通克隆)。
运行
git fetch origin master
,例如,将更新限制为仅更新origin/master
,即使dev
在 [=15] =] 有新的提交会更新origin/dev
如果你有 运行git fetch origin
而不是git fetch origin master
.
第二种情况一直由 git pull
驱动,如果您使用它的话。 (我建议避免 git pull
以支持单独的获取和第二个命令,根据需要变基或合并。)
最后一种情况在 1.8.2 之前的 Git 版本中很常见,例如 git fetch origin master
甚至无法更新 origin/master
。解决方案是升级到现代 Git.