我刚刚做了
git fetch origin <remoteBranch>
然后我就做了
git checkout <remoteBranch>
这创建了一个名为<remoteBranch>
的本地分支。
那怎么起作用?通常,当我想创建本地分支时,我必须做
git checkout -b
答案 0 :(得分:2)
据我所知,当您要求结帐时,如果分支在本地不存在,git会尝试查找具有该名称的一个(也只有一个)远程分支。如果存在,并且只有一个(在您的仓库中可能有多个具有相同分支名称的远程服务器),则git猜测这就是您想要的分支,因此它使用远程分支作为上游分支在本地创建它。>
答案 1 :(得分:2)
git checkout <branch>
[...]如果找不到
<branch>
,但确实在一个具有匹配名称的远程站点(称为<remote>
)中存在跟踪分支,则将其等同于$ git checkout -b <branch> --track <remote>/<branch>
如果分支存在于多个远程站点中,并且其中一个由checkout.defaultRemote配置变量命名,则即使歧义
<branch>
在所有远程站点中都不唯一,我们仍将使用该分支进行歧义消除遥控器。将其设置为checkout.defaultRemote = origin,如果<branch>
模棱两可但在原始远程站点上存在,则始终从那里签出远程分支。另请参见git-config [1]中的checkout.defaultRemote。