克隆单个分支后再克隆另一个分支

15
我使用以下命令来克隆一个分支:
git clone user@git-server:project_name.git -b branch_name --single-branch /your/folder

现在我想从服务器检出另一个分支。我尝试了下面的命令,但它没有起作用

git checkout another_branch

在克隆一个分支之后,我如何克隆/检出/拉取/获取另一个分支?

2个回答

13
除了 Mureinik's answer 这个适用于一些“一次性”/短期工作的情况之外,您还可以使用 git remote 添加其他分支,或将您的单分支克隆更新为全分支克隆。
git remote set-branches --add origin another-branch

在此之后,git fetch origin 会创建远程跟踪名origin/another-branch,这将允许git checkout another-branch 使用 --guess 模式从你的远程跟踪名origin/another-branch创建你的(本地)分支名another-branch
要取消单分支克隆,请使用:
git remote set-branches origin "*"

(跟平常一样使用git fetch命令)。请注意,是否需要引用星号取决于您的命令行解释器,但通常情况下这样做是安全的。

11
通过在git fetch调用中在远程名称后指定另一个远程分支即可提取它: git fetch <remote> <remote_branch>
git fetch origin another_branch

一旦获取到数据,你会在 FETCH_HEAD 中找到它,可以使用它来创建本地分支:

git checkout FETCH_HEAD -b another_branch

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接