如何检出远程Git分支?

内容来自 DOC https://q.houxu6.top/?s=如何检出远程Git分支?

有人用 git push origin test 将名为 test 的分支推送到一个共享仓库中。我可以通过 git branch -r 看到该分支。如何检出远程 test 分支?我尝试过:

  • git checkout test,没有任何反应
  • git checkout origin/test,得到 * (no branch)

答案会根据是否配置了一个远程仓库还是多个远程仓库而有所不同。对于只有一个远程仓库的情况,一些命令可以简化,因为没有那么多的歧义。

更新至 Git 2.23: 对于旧版本,请参阅末尾的部分。

一个远程仓库

在这两种情况下,首先从远程仓库获取数据,以确保您已下载了所有最新的更改。

$ git fetch

这将为您抓取所有远程分支。您可以使用以下命令查看可用于检出的分支:

$ git branch -v -a

...
remotes/origin/test

remotes/*开头的分支可以被认为是远程分支的只读副本。要处理分支,您需要从其中创建一个本地分支。这可以通过Git命令“switch”(自Git 2.23起)完成,给它一个远程分支的名称(减去远程名称):

$ git switch test

在这种情况下,Git正在猜测(可以使用--no-guess禁用)您正在尝试检出和跟踪具有相同名称的远程分支。

多个远程仓库

在存在多个远程仓库的情况下,需要显式指定远程仓库的名称。

如前所述,首先获取最新的远程更改:

$ git fetch origin

这将为您抓取所有远程分支。您可以使用以下命令查看可用于检出的分支:

$ git branch -v -a

有了远程分支后,现在需要使用-c选项检出您感兴趣的分支以创建新的本地分支:

$ git switch -c test origin/test

有关使用git switch的更多信息:

$ man git-switch

Git 2.23之前

git switch是在Git 2.23中添加的,在此版本之前,使用git checkout来切换分支。

要检出只有一个远程仓库:

git checkout test

如果配置了多个远程仓库,则会变得稍长一些

git checkout -b test <name of remote>/test

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值