有人推了一个分行test
与git push origin test
共享仓库的共享仓库。git branch -r
如何查看遥控器test
我试过了
git checkout test
,它没有做任何事情git checkout origin/test
给给* (no branch)
有人推了一个分行test
与git push origin 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 switch
在此之前,在Git 2.23中加上git checkout
用于交换分支。
仅使用一个远程仓库退出 :
git checkout test
如果有多个已配置的远程仓库, 它会变长一点
git checkout -b test <name of remote>/test
其他回答
使用 :
git checkout -b <BRANCH-NAME> <REMOTE-NAME>/<BRANCH-NAME>
其它答案在我的良性案例中不适用于现代 Git 。 如果远程分支是新的, 您可能需要先拉一下, 但我还没有检查过这个案例 。
工作命令
git fetch origin 'remote_branch':'local_branch_name'
git switch 'local_branch_name'
git pull origin 'remote_branch':'local_branch_name'
第一个是从远程分支获取分支和创建本地分支。
第二个是转换到当地分行。
第三是将最近的远距离变化推到当地分部。
有许多替代办法,例如:
备选案文1:
git fetch && git checkout test
这是最简单的办法
备选案文2:
git fetch
git checkout test
是一样的,但分两步走
我总是这样:
git fetch origin && git checkout --track origin/branch_name
在我看来,没有人建议 最简单的方法(也许我太笨了 觉得这太蠢了)"一种方式"但无论如何,试试这个:
git pull origin remoteBranchName
git switch remoteBranchName
这对我也有效(在我最后一次拉拉请求后,在遥控器上创建了一个分支)。