有人推了一个分行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 检查退出测试, 无效
Does nothing
不等于doesn't work
,所以我猜想当您在终端键入“ Gitt 检出测试” 并按键输入密钥时,没有出现消息,也没有出错。对不对?
如果答案是"是" 我可以告诉你原因
原因是在您的工作树上有一个名为“ 测试” 的文件( 或文件夹) 。
何时git checkout xxx
被弃绝,
xxx
一开始是树枝名称, 但没有任何树枝名称测试 。xxx
这是一条道路,幸运的是,有一个名为“测试”的文件。git checkout xxx
表示丢弃任何修改xxx
文件。xxx
或,然后 Git 将尝试创建xxx
根据某些规则,其中一项规则是设立一个部门,名为:xxx
如果remotes/origin/xxx
存在。其他回答
答案已经分割, 取决于是否配置了一个远程仓库或多个。 原因是对于单个远程案例, 某些命令可以简化, 因为模糊性较小 。
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
在这种情况下,你可能想要 创建本地test
正在跟踪远程test
分支 :
$ git branch test origin/test
先前版本的git
,你需要一个明确的--track
选项,但当您正在从一个远程分支进行分支分割时,这是默认值。
创建本地分支和切换到它,使用:
$ git checkout -b test origin/test
命令
git fetch --all
git checkout -b <ur_new_local_branch_name> origin/<Remote_Branch_Name>
等于
git fetch --all
时和时
git checkout -b fixes_for_dev origin/development
两者将创造latest fixes_for_dev
调自development
你基本上看到了树枝,但你还没有本地的拷贝!
你需要,你需要fetch
分支...
您可以简单地获取并退出分支, 使用下面的一条线命令来做到这一点 :
git fetch && git checkout test
我还创建了下面的图像 让你分享差异,看看如何fetch
以及它是如何与pull
:
如果远程分支名称是以特殊字符开头的,您需要在退出命令中使用单引号,否则Git将不知道您在谈论哪个分支。
例如,我试图查看一个远程分支 命名为#9773
,但如下图所示,命令没有正常工作:
出于某种原因,我想知道尖锐符号(###)是否与它有关,然后我试图用单引号绕绕分支名称,例如'#9773'
而不是仅仅#9773
幸运的是,它的工作很好。
git checkout -b '#9773' origin/'#9773'