远程存储库包含各种分支,如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 checkout -b 'your_branch' origin/'remote branch'
其他回答
[快速回答]
有很多选择,我最喜欢的是:
-备选方案1:
git fetch --all
git checkout YourBranch
使用此替代方法时,请使用远程存在但不在本地的分支。
-备选方案2:
git checkout -b 'YourBranch' origin/'YourRemote'
也许,这是最简单的方法。
使用gitbranch-a(本地和远程分支)或gitbranch-r(仅远程分支)查看所有远程及其分支。然后,您可以对远程执行git checkout-t remotes/repo/branch并创建本地分支。
还有一个git-ls-remote命令,用于查看该远程的所有ref和标记。
只需尝试:
git pull origin your_branch_name
如果您正在尝试“签出”一个新的远程分支(仅存在于远程,而不存在于本地),以下是您需要的:
git fetch origin
git checkout --track origin/<remote_branch_name>
这假设您要从原点提取。如果没有,请用远程名称替换源。
如果下载带有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,因为这会获取所有数据,所以可能需要很长时间。