有人推了一个分行testgit push origin test共享仓库的共享仓库。git branch -r如何查看遥控器test我试过了

  • git checkout test,它没有做任何事情
  • git checkout origin/test给给* (no branch)

当前回答

git branch -r表示对象名称无效, 因为该分支名称不在 Git 的本地分支列表中。 更新您的本地分支列表来源 :

git remote update

然后再试着检查一下你的远程分支

这对我管用

我相信git fetch拉拉进全部( 全部)远端树枝,这不是最初的海报所要的。

其他回答

简单运行git checkout使用远程分支的名称。 Git 会自动自动创建本地分支, 跟踪远程分支 :

git fetch
git checkout test

但是,如果在不止一个远程中发现分支名称, 则无法使用 Git , 因为 Git 不知道该使用哪个 。 在这种情况下, 您也可以使用 :

git checkout --track origin/test

git checkout -b test origin/test

2.19基特学会了checkout.defaultRemote配置, 它指定了在解决此模糊性时默认的远程 。

您可以添加一个新的分支test在本地和随后使用上:

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

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

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

Enter image description here

出于某种原因,我想知道尖锐符号(###)是否与它有关,然后我试图用单引号绕绕分支名称,例如'#9773'而不是仅仅#9773幸运的是,它的工作很好。

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

我尝试了上面的解决方案,但行不通。试试这个,它奏效了:

git fetch origin 'remote_branch':'local_branch_name'

这将获取远程分支, 并创建一个新本地分支( 如果尚未存在) 名称local_branch_name并追踪其中的遥控者。

在这种情况下,你可能想要 创建本地test正在跟踪远程test分支 :

$ git branch test origin/test

先前版本的git,你需要一个明确的--track选项,但当您正在从一个远程分支进行分支分割时,这是默认值。

创建本地分支切换到它,使用:

$ git checkout -b test origin/test