远程存储库包含各种分支,如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 Switch
下面写的所有信息都是准确的,但添加了一个新命令gitswitch,简化了工作。
如果daves_branch存在于远程存储库中,但不存在于本地分支中,则只需键入:
git switch daves_branch
由于您在本地没有分支,这将自动使交换机在远程回购上运行。然后,它还将自动设置远程分支跟踪。
请注意,如果daves_branch在本地不存在,则在使用开关之前需要先获取git。
原始帖子
您需要创建跟踪远程分支的本地分支。以下命令将创建一个名为daves_branch的本地分支,跟踪远程分支origin/davis_branch。当您推送更改时,远程分支将被更新。
对于最新版本的Git:
git checkout --track origin/daves_branch
--track是git checkout的简写-b[branch][remotename]/[branch],在本例中[remotename]是原点,[branch是两倍,在本示例中是davesbranch。
对于Git 1.5.6.5,您需要:
git checkout --track -b daves_branch origin/daves_branch
对于Git 1.7.2.3及更高版本,这已经足够了(它可能更早开始,但这是我可以很快找到的最早确认):
git checkout daves_branch
注意,对于最新的Git版本,此命令不会创建本地分支,并将使您处于“分离HEAD”状态。如果需要本地分支,请使用--track选项。
详细信息如下:3.5 Git分支-远程分支,跟踪分支
其他回答
步骤如下:;
gitfetchorigin或gitfetch-all,这将把所有远程分支提取到本地,然后这是您可以使用的第二个选项。git checkout--跟踪原点/<要切换的The_remote_branch>
然后处理这个分支,您可以通过键入
git branch
它显示您当前所在的分支。
你用“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 checkout -b branch_name
git pull remote_name branch_name
标题和问题混淆了:
Git获取远程分支我的同事怎么能具体地拉动那个分支。
如果问题是,我如何才能使用远程分支,或者我如何Git签出远程分支?,更简单的解决方案是:
使用Git(>=1.6.6),您可以使用:
git checkout <branch_name>
如果找不到本地<branch_name>,但恰好在一个远程中存在具有匹配名称的跟踪分支,请将其视为等同于:
git checkout -b <branch_name> --track <remote>/<branch_name>
参见Git签出文档
对于您的朋友:
$ git checkout discover
Branch discover set up to track remote branch discover
Switched to a new branch 'discover'
假设你的遥控器git@xyz.git你想要它的random_branch分支。流程应如下:
首先检查遥控器列表git远程-v如果你没有git@xyz.git在上述命令的输出中,您可以通过git远程添加xyzgit@xyz.git现在,您可以通过git获取xyz现在通过git checkout-b my_copy_random_branch xyz/random_brance检查分支列表查看所有的分支
本地分支my_copy_random_branch将跟踪远程的random_brance分支。