远程存储库包含各种分支,如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 checkout <branch_name>

并且得到

Branch <branch_name> set up to track remote branch <branch_name> from origin.
Switched to a new branch '<branch_name>'

其他回答

使用gitbranch-a(本地和远程分支)或gitbranch-r(仅远程分支)查看所有远程及其分支。然后,您可以对远程执行git checkout-t remotes/repo/branch并创建本地分支。

还有一个git-ls-remote命令,用于查看该远程的所有ref和标记。

[快速回答]

有很多选择,我最喜欢的是:

-备选方案1:

git fetch --all
git checkout YourBranch

使用此替代方法时,请使用远程存在但不在本地的分支。

-备选方案2:

git checkout -b 'YourBranch' origin/'YourRemote'

也许,这是最简单的方法。

要签出远程而非本地存在的myBranch,这对我很有用:

git fetch --all
git checkout myBranch

我收到了这条消息:

Branch myBranch set up to track remote branch myBranch from origin
Switched to a new branch 'myBranch'

如果你已经知道你的远程分支了。。。

git remote
=> One
=> Two

并且您知道要签出的分支名称,例如br1.2.3.4,然后执行

git fetch One
=> returns all meta data of remote, that is, the branch name in question.

剩下的就是结账

git checkout br.1.2.3.4

然后用它做新的树枝。

要获取远程上存在的分支,最简单的方法是:

git fetch origin branchName
git checkout branchName

您可以通过以下方式查看它是否已存在于远程:

git branch -r

这会将远程分支提取到本地,并自动跟踪远程分支。