无法签出远程 git 分支

cannot checkout remote git branch

我在 github 本地克隆中。以下是分支机构列表:

$ git branch -a
* master
  online-demo
  remotes/origin/HEAD -> origin/master
  remotes/origin/develop
  remotes/origin/gh-pages
  remotes/origin/master
  remotes/origin/online-demo
  remotes/pateketrueke/develop
  remotes/pateketrueke/gh-pages
  remotes/pateketrueke/master

当我尝试签出远程分支时,出现错误:

$ git checkout develop
error: pathspec 'develop' did not match any file(s) known to git.

我不知道那是从哪里来的。我想我多年来一直在做这样的结账。也许我错过了什么。无论如何,我做了 git fetchgit fetch origingit pull,因为我 运行 没有想法而且仍然有同样的错误。

您没有任何名为 develop 的本地分支机构。当执行 git checkout develop 并且没有找到本地分支时,git 将理解您想要基于远程仓库中的 develop 分支创建一个名为 develop 的新本地分支,如果存在的话。在您的情况下,您有 2 个这样的分支 origin/developpateketrueke/develop,因此存在歧义。

您可以使用以下表格更明确地说明它:

git branch develop origin/develop
git checkout develop

git branch develop pateketrueke/develop
git checkout develop

看你想要什么。


这些可以简写为:

git checkout -b develop origin/develop

git checkout -b develop pateketrueke/develop

您可以尝试查看完整的 SHA 提交

git checkout -b "分支名称"

git pull origin“分支名称”

按顺序尝试以下命令:

git fetch
git checkout "your_branch_name"

工作原理:

如果您的分支是 git 中的新分支,请使用 fetch 命令获取名称,稍后您可以使用 git checkout 命令检出该分支。

查看您可以使用的所有分支

git branch -a