远程存储库包含各种分支,如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
远程存储库包含各种分支,如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 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
然后用它做新的树枝。
其他回答
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撰写(为便于阅读而删减)
帮助我的是
1) 查看所有可用的远程分支(例如“远程分支名称”)
git branch -r
2) 使用远程分支名称创建本地分支
git fetch && git checkout 'remote-branch-name'
使用gitbranch-a(本地和远程分支)或gitbranch-r(仅远程分支)查看所有远程及其分支。然后,您可以对远程执行git checkout-t remotes/repo/branch并创建本地分支。
还有一个git-ls-remote命令,用于查看该远程的所有ref和标记。
你用“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--all&git checkout<分支名称>