有人将称为 Git 推力源测试的分支推向共享仓库 。 我可以看到有 git 分支 -r 的分支 。 我如何查看远程测试分支 ? 我试过 :

git 检出测试, 它不会给 git 检出源/ 测试提供任何结果 * (无分支)


当前回答

git 获取 -- all

将所有远程分支都带回您的本地

git 检出测试

将您切换到测试分支

其他回答

如果分支位于来源远程以外的某物上,我愿意做以下工作:

$ git fetch
$ git checkout -b second/next upstream/next

此选项将检查上游边远处的下一个分支, 到一个名为第二个/ 下一个的本地分支。 这意味着如果您已经拥有下一个命名为本地分支的分支, 就不会发生冲突 。

$ git branch -a
* second/next
  remotes/origin/next
  remotes/upstream/next

对我们来说, 远程的. 起源. fetch 配置有问题。 因此, 我们看不到任何其他的远程分支, 以至于我们看不到主人, 所以git getting[-- all] 毫无帮助。 无论是 Git 检查我的分机还是 git check out - b mybranch -- track- track 起源/ Mybranch 都没有工作, 尽管它确实在遥远的地方。

上一个配置只允许获取主机 :

$ git config --list | grep fetch
remote.origin.fetch=+refs/heads/master:refs/remotes/origin/master

使用 * 来修正它,并从源头获取新信息 :

$ git config remote.origin.fetch '+refs/heads/*:refs/remotes/origin/*'

$ git fetch
...
 * [new branch] ...
...

现在我们可以去本地的远程分支检查了

我完全不知道这个配置 怎么会出现在我们本地的仓库里

git 获取 -- all

将所有远程分支都带回您的本地

git 检出测试

将您切换到测试分支

侧注: 使用现代 git ( & gt; = 1.6. 6) 您可以使用

git checkout test

(注意测试不是“原产/试验”) 执行神奇的dwim-mery 和为您创建本地分支“测试”, 而上游则是远程跟踪分支“原产/试验”。


在 Git 分支输出中的 * (没有分支) 表示您在未命名的分支上, 即所谓的“ 挂勾头 ” 状态( 直接承诺的头点, 而不是某些本地分支的象征性引用) 。 如果您在这个未命名的分支上做了一些承诺, 您总是可以在当前承诺中创建本地分支 :

git checkout -b test HEAD

评论中建议的一种更现代的方法:

@dennis: git check out<non-branch> 例如, git check out/ test 结果在独立头部/ 未命名分支中, 而 git check out test 或 git check out - b 测试源/ test 结果在本地分支测试中( 有远程跟踪分支来源/ 测试为上游) - Jakub narbski jan 9'14 at 8: 17

以 git 检出来源/ 测试为重点

您可以在本地端添加新的分支测试,然后使用:

git branch --set-upstream-to=origin/test test