远程存储库包含各种分支,如origin/davis_branch:

$ git branch -r
origin/HEAD -> origin/master
origin/daves_branch
origin/master

如何将daves_branch获取到本地存储库,以便它跟踪origin/davis_branch?

我尝试了:

$ git fetch origin discover
$ git checkout discover

当前回答

你用“git pull”来保持你的分支分开。我将使用实际的存储库和分支名称来帮助,因为“lbranch”和“rbranch”很难破译。

让我们使用:myteam.unfuddle.com=远程Git服务器tlc=存储库所在的未归档项目帐户daves_branch=远程分支名称

无论有多少分支,您或任何同事都可以运行此命令仅拉动您的分支:

git init
git pull git@myteam.unfuddle.com:myteam/tlc daves_branch:refs/remotes/origin/daves_branch

其他回答

本地获取分支:

git fetch origin <branchName>

移动到该分支:

git checkout <branchName>

git branch<name>--跟踪原点/<name>

Use:

git checkout -b serverfix origin/serverfix

这是一个非常常见的操作,Git提供了--track速记:

git checkout --track origin/serverfix

事实上,这是如此普遍,甚至有一条捷径。如果您尝试签出的分支名称(a)不存在,并且(b)仅与一个远程服务器上的名称完全匹配,Git将为您创建一个跟踪分支:

git checkout serverfix

要使用与远程分支不同的名称设置本地分支,可以轻松地使用具有不同本地分支名称的第一个版本:

git checkout -b sf origin/serverfix

现在,您的本地分支sf将自动从origin/serverfix中提取。

来源:Pro Git,第二版,由Scott Chacon和Ben Straub撰写(为便于阅读而删减)

git fetch

git branch -r

git checkout <branch_name>

在我看来,这一行命令是获取和签出本地不存在的远程分支的最简单方法:git获取和git签出remote_branch