远程存储库包含各种分支,如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
当前回答
使用gitbranch-a(本地和远程分支)或gitbranch-r(仅远程分支)查看所有远程及其分支。然后,您可以对远程执行git checkout-t remotes/repo/branch并创建本地分支。
还有一个git-ls-remote命令,用于查看该远程的所有ref和标记。
其他回答
步骤如下:;
gitfetchorigin或gitfetch-all,这将把所有远程分支提取到本地,然后这是您可以使用的第二个选项。git checkout--跟踪原点/<要切换的The_remote_branch>
然后处理这个分支,您可以通过键入
git branch
它显示您当前所在的分支。
git fetch&&git checkout<你朋友的分行名>应该可以做到这一点
如果下载带有git clone<repo_url>-b<branch>(仅克隆特定分支)的存储库,则应修改<repo_name>/.git/config文件。替换或修改引用[remote“origin”]部分的fetch目标的行,让命令git fetch--all发现所有分支:
[remote "origin"]
url = <repo_git_url>
fetch = +refs/heads/master:refs/remotes/origin/master
确保将提取参数点设置为/heads/master。
小心git fetch,因为这会获取所有数据,所以可能需要很长时间。
标题和问题混淆了:
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 branch<name>--跟踪原点/<name>