git fetch获取所有远程分支的信息,而git pull执行git fetch-然后只合并当前分支,这正确吗



主题中的问题基本上说明了一切。

在典型/默认操作(多个远程分支、多个本地分支,其中一些可能正在跟踪(下,git fetch操作将从远程获取有关所有远程分支的信息,并将其加载到本地远程分支refs中,而git pull操作首先执行git fetch(获取有关所有远程分支的信息(,但随后仅在由当前签出的本地分支跟踪的远程分支。这是正确的吗?

是。

原因是git merge只能对当前提交进行操作(因此也可以对当前分支进行操作,如果有当前分支的话——也就是说,如果您没有处于"分离的HEAD"模式(。如果合并成功,Git可以继续尝试更多(本地(分支和任何更新的上游,但它没有这样做。

最新更新