我得到这个错误拉:

您的配置指定与ref合并 'refs/heads/feature/Sprint4/ABC-123-Branch',但没有 这样的裁判是拿来的。

这个错误不会出现在任何其他分支上。这个分支的特殊之处在于,它是从另一个分支的上一次提交中创建的。 我的配置文件如下:

[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
    hideDotFiles = dotGitOnly
[remote "origin"]
    url = <url here>
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master
[branch "new-develop"]
    remote = origin
    merge = refs/heads/new-develop
[branch "feature/Sprint4/ABC-123-Branch"]
    remote = origin
    merge = refs/heads/feature/Sprint4/ABC-123-Branch

当前回答

我刚刚经历了“no such ref was fetch”的问题,以上建议都没有帮助。我解决这个问题的方法是改变我的本地配置

remote.origin.fetch=+refs/heads/master:refs/remotes/origin/master

to

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

我不知道为什么会起作用,但确实起了作用。经过这个改变,我可以拉,得到我所期望的。

如果我把它改回来,我在试图拉的时候再次得到“no such ref was fetch”。所以这绝对是修复(不是蹩脚的互联网,或情况差异,或全驱动器,或删除远程分支,或默认分支不命名为“master”等)。

其他回答

我是在用纱线装包的时候遇到的。自己的依赖项将分支main重命名为master。仅更新上游依赖并不能修复它,我还必须清理yarn缓存。

项目A重命名了主分支(main -> master)。项目A是项目B的一个依赖项。 yarn install on Project B <——导致错误 在项目A上推送更新 yarn install on Project B <——导致错误 纱线缓存清理 纱线安装在项目B <-工作现在

检查您的远程分支是否可用。 我也有同样的问题,最后意识到远程分支被某人删除了。

非正式的,但是删除我的本地项目并重新克隆是有效的。

我这样做是安全的,因为我从来没有为合并开发过分支。

我在远程中被合并和删除的分支中。在一家存在的分行结账,然后取款,这对我有帮助。

对我来说,这是一个个案敏感性问题。我的本地分支是Version_feature2而不是Version_feature2。我重新检查了我的分支使用正确的套管,然后git拉工作。