GIT没有提取我的新分支

时间:2015-02-22 22:12:41

标签: git git-remote git-fetch

我在遥控器上创建了一个新分支,所以我希望这样做:

$ git fetch && git checkout feature/name

然而,我收到此错误:

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

当我自己运行git fetch时,它不会返回任何内容,我也尝试了git fetch origin,但这也无效。

git remote只返回一个名为origin的遥控器。

我的配置如下:

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
    precomposeunicode = true
[remote "origin"]
    url = removed as it is a private repo
    fetch = +refs/heads/staging:refs/remotes/origin/staging
[branch "staging"]
    remote = origin
    merge = refs/heads/staging

3 个答案:

答案 0 :(得分:1)

根据Andrew C的评论。我将git配置中的fetch行更改为:

fetch=+refs/heads/*:refs/remotes/origin/*

答案 1 :(得分:1)

修复方法是更正remote.origin.fetch参数,例如

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

所以可以获取所有分支。请参阅:How to fetch all remote branches?

答案 2 :(得分:0)

如果您使用的是GIt> 1.9.X,则默认上游的值为simple

如果您想获取所有分支和标签,请使用: git fetch --all --prune
--all将获取所有分支和标记
--prune将删除所有已删除的分支和标记

这些标志将应用于您的本地存储库。