为什么 git 不更新我的远程跟踪分支?

Why doesn't git update my remote tracking branch?

我有两家分行结账。其中之一是 "origin" 远程中的主要分支,并设置为跟踪它(或者我相信)。另一个是active branch,只存在于这个checkout中。

这是 git branch -vv 的输出:

  Official    9b44ada [origin/Official: behind 5] <commit message>
* MyBranch    aecc225 <commit message>

当我执行 git fetch 时,输出为空(我相信我已经从那里得到了所有更改),但是 Official 分支仍然是这样:落后 5 次提交.

如果我尝试 git pull,获取阶段同样是空白,然后我被警告没有 MyBranch 的跟踪信息(这是预期的)。

为什么 git fetch 不更新远程跟踪分支 Official,我如何让它更新?

如果您执行 git fetch,那么它将更新 origin/Official,但不会更新您的本地分支 Official 以匹配它。

如果您执行 git pull,它将获取并更新您当前的分支(但不是其他分支)以匹配远程分支,如果需要则触发合并。

要更新本地 Official 分支以匹配远程:

git checkout Official
git pull