有人将称为 Git 推力源测试的分支推向共享仓库 。 我可以看到有 git 分支 -r 的分支 。 我如何查看远程测试分支 ? 我试过 :
git 检出测试, 它不会给 git 检出源/ 测试提供任何结果 * (无分支)
有人将称为 Git 推力源测试的分支推向共享仓库 。 我可以看到有 git 分支 -r 的分支 。 我如何查看远程测试分支 ? 我试过 :
git 检出测试, 它不会给 git 检出源/ 测试提供任何结果 * (无分支)
当前回答
被接受的答案不为你工作?
第一个和选定答案在技术上是正确的,但您可能尚未从远程仓库中检索到所有对象和参考文献。 如果是这样,您将会收到以下错误:
$ git checkout -b remote_branch origin/remote_branch
致命: git 检出: 更新路径与切换分支不兼容 。 您是否打算检查“ 来源/ remote_ branch ” , 无法以承诺方式解决 ?
解决方案
如果您收到此信件, 您必须先从 Git 获取源代码中获取消息, 在运行 git 检查远程_ branch 之前, 源代码是远程仓库的名称 。 以下为完整的例子, 并给出回复 :
$ git fetch origin
remote: Counting objects: 140, done.
remote: Compressing objects: 100% (30/30), done.
remote: Total 69 (delta 36), reused 66 (delta 33)
Unpacking objects: 100% (69/69), done.
From https://github.com/githubuser/repo-name
e6ef1e0..5029161 develop -> origin/develop
* [new branch] demo -> origin/demo
d80f8d7..359eab0 master -> origin/master
$ git checkout demo
Branch demo set up to track remote branch demo from origin.
Switched to a new branch 'demo'
正如您所看到的, 运行 Git 抓取来源时, 检索到我们尚未设置的远程分支 来追踪本地机器 。 从那里, 既然我们现在有一个 ref 到远程分支, 我们可以简单地运行 git 检查远程支架, 我们会从远程跟踪中受益 。
其他回答
您可以在本地端添加新的分支测试,然后使用:
git branch --set-upstream-to=origin/test test
有许多替代办法,例如:
替代 1: git 抓取 git 检出测试, 这是最简单的方法 。 替代 2: git 抓取 git 检出测试相同, 但分为两步 。
git 分支 -r 表示对象名称无效, 因为该分支名称不在 Git 的本地分支列表中。 从源头更新您的本地分支列表 :
git remote update
然后尝试再检查一下你的远程分支。
这是为我工作。
我相信在所有偏远的树枝里都会拉拉, 这并不是最初的海报所希望的。
如果分支位于来源远程以外的某物上,我愿意做以下工作:
$ git fetch
$ git checkout -b second/next upstream/next
此选项将检查上游边远处的下一个分支, 到一个名为第二个/ 下一个的本地分支。 这意味着如果您已经拥有下一个命名为本地分支的分支, 就不会发生冲突 。
$ git branch -a
* second/next
remotes/origin/next
remotes/upstream/next
简单的 Git 检查退出时使用远程分支的名称。 git 会自动创建本地分支, 跟踪远程分支 :
git fetch
git checkout test
但是,如果在不止一个远程中发现该分支名称, 这不会起到Git不知道该使用什么的作用。 在这种情况下, 您也可以使用 :
git checkout --track origin/test
或
git checkout -b test origin/test
在 2.19 中, git 学会了检出。 默认远程配置, 指定了在解决这种模糊性时的远程默认值 。