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

Sat*_*yam 16 git branch git-clone git-checkout

我使用以下命令来克隆一个分支:

git clone user@git-server:project_name.git -b branch_name --single-branch /your/folder
Run Code Online (Sandbox Code Playgroud)

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

git checkout another_branch
Run Code Online (Sandbox Code Playgroud)

克隆单个分支后,如何克隆/签出/拉取/获取另一个分支?

tor*_*rek 15

除了Mureinik 的答案\xe2\x80\x94 这对于某些“一次性”/短期工作案例很有用 \xe2\x80\x94 您还可以使用git remote添加其他分支,或将单分支克隆更新为全分支克隆:

\n
git remote set-branches --add origin another-branch\n
Run Code Online (Sandbox Code Playgroud)\n

之后,git fetch origin将创建远程跟踪名称origin/another-branch,这将允许git checkout another-branch调用模式从远程跟踪名称--guess创建您的(本地)分支名称。another-branchorigin/another-branch

\n

要取消克隆的单分支,请使用:

\n
git remote set-branches origin "*"\n
Run Code Online (Sandbox Code Playgroud)\n

(跟git fetch往常一样)。

\n

请注意,是否需要引用星号取决于您的命令行解释器,但通常这样做是安全的。

\n


Mur*_*nik 12

您可以通过在调用中的远程名称后指定它来获取另一个远程分支git fetch

git fetch origin another_branch
Run Code Online (Sandbox Code Playgroud)

获取后,您将在 中找到它FETCH_HEAD,并使用它来创建本地分支:

git checkout FETCH_HEAD -b another_branch
Run Code Online (Sandbox Code Playgroud)