git checkout branchname无效

时间:2015-07-07 11:13:40

标签: git github git-stash

我已经在stash存储库中创建了新项目,并且我已经在这个新项目的stash中创建了几个分支。我能够从git bash克隆项目,但是当我尝试检查特定分支时,我得到了以下错误

git checkout feature/Project_branch

error: pathspec 'feature/Project_branch' did not match any file(s) known to git.

但如果我使用如下,那么它的工作

git fetch origin

git checkout feature/Project_branch

还有其他一些项目,我用它来检查它是在没有使用git fetch origin command的情况下工作,但在我的新存储库案例中,它抛出了错误。

任何人都可以帮助我理解,是否有任何配置我必须使用git checkout直接签出分支而不使用git fetch命令?

2 个答案:

答案 0 :(得分:1)

我认为您在结帐时缺少-t选项。

请改为尝试:

$ git checkout -t feature/Project_branch

这将创建一个名为Project_branch的分支,正在跟踪feature/Project_branch

答案 1 :(得分:0)

所有git fetch确实将下载信息下载到您尚未拥有的存储库中。这意味着当您第一次尝试切换到feature / Project_branch时,您还没有下载它。你可以通过两种方式获得它

1 - 在原始git clone之后,当前与远程存储库关联的所有分支都将被下载并在本地git仓库中可用。

2 - 如果在git clone之后将新分支添加到远程存储库,则必须执行git fetch或类似的操作,例如git pull,才能获得访问权限到分公司。

必须发生的事情是,您最初克隆存储库时未创建和推送您要切换到的分支,这就是您必须执行git fetch

的原因

但是,从现在开始,您不必运行git fetch即可在master和feature / Project_branch之间切换。

注意: git branch会在您当地的仓库中列出您拥有的所有分支机构。