我对Git有一个奇怪的问题,我在某个地方引用了一个名为2013.rel25
的旧分支,但我不知道它在哪里。这是一个很久以前在原点上合并和删除的分支。
C:\project>git pull
fatal: Couldn't find remote ref refs/heads/2013.rel25
C:\project>git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/master
C:\project>git remote prune origin
C:\project>git pull
fatal: Couldn't find remote ref refs/heads/2013.rel25
我怎样才能找出引用这个既不存在于本地也不存在于遥控器上的死分支的内容?然后,我如何删除或修复引用,以便我可以返回从origin / master到本地master?
编辑:我的.git/config
文件专门将其作为提取头引用。我猜我会手动删除它:
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
hideDotFiles = dotGitOnly
[remote "origin"]
url = git@github.com:somebody/project.git
fetch = +refs/heads/*:refs/remotes/origin/*
fetch = refs/heads/2013.rel25:refs/remotes/origin/2013.rel25
[branch "master"]
remote = origin
merge = refs/heads/master
答案 0 :(得分:6)
我找不到通过命令行删除它的方法,所以我只是在.git/config
编辑了我的Git配置文件并删除了这一行:
fetch = refs/heads/2013.rel25:refs/remotes/origin/2013.rel25
答案 1 :(得分:-1)
处理此问题的一种方法是从远程克隆项目,您将获得无任何错误的Clean文件。