我可以拉到我所在的分支以外的分支吗?

oro*_*ome 3 git branch git-pull

我需要能够拉到一个我可能不在的分支(实际上,为了论证而假设我不知道我在哪个分支).例如,我有一个origin带有分支的遥控器,该分支master由本地master使用跟踪分支以常规方式在本地跟踪.我可以提供的选项或参数git-pull与切换master,拉动,然后切换回我开始的任何分支具有相同的效果吗?

这里的许多答案表明这是不可能的,但是文档<dst>under 的讨论<refspec>暗示了类似的东西

git pull origin master:master 
Run Code Online (Sandbox Code Playgroud)

会做的.是这样吗?

Sto*_*ica 5

一个git pull基本上做一个git fetch跟着一个git merge.

这样做git pull的另一个分支是不可能的,因为这样做git merge的另一个分支是不可能的.为了能够做到git merge,您需要先检查目标分支.出于同样的原因,你不能git pull为另一个分支做.

@torek添加了一个很好的观点:

并且,要专门解决git pull origin x:y:git pull将x:y参数传递给git fetch,所以git fetch执行它所做的事情; 但随后git pull尝试合并到当前分支中,无论x和/或y如何.

另见以供参考:

合并分支没有结帐

  • 并且,要专门解决`git pull origin x:y`:`git pull`将`x:y`参数传递给`git fetch`,所以`git fetch`执行它所做的事情; 但是`git pull`尝试合并到当前分支中,无论是`x`和/或`y`. (2认同)