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

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


当前回答

您可以开始跟踪所有远程分支, 使用以下制表单脚本 :

#!/bin/bash
git fetch --all
for branch in `git branch -r --format="%(refname:short)" | sed 's/origin\///'`
  do git branch -f --track "$branch" "origin/$branch"
done

这里还有一个单行版本 :

git fetch --all; for branch in `git branch -r --format="%(refname:short)" | sed 's/origin\///'`; do git branch --track "$branch" "origin/$branch" ; done ;

其他回答

在您的情况中,您可以使用此命令:

git 检出 -b 测试来源/测试

获得新创建的分支

git fetch

切换到另一个分支

git checkout BranchName

侧注: 使用现代 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 fetch && git checkout dev

如果远程分支名称以特殊字符开头, 您需要在校验退出命令中使用单引号, 否则git 将不知道您在谈论哪个分支 。

例如,我试图查看一个叫9773的远程分支, 但命令没有正常工作, 如下图所示:

因为某种原因, 我想知道尖锐的符号( ) 是否与它有关, 然后我试图用单引号, 比如“ 9773 ” 而不是仅仅9773, 环绕分支名称, 幸运的是,

git checkout -b '#9773' origin/'#9773'