我只有分支主和我得到这个错误,每次我尝试“git拉”:

error: Couldn't set refs/remotes/origin/master
From /var/lib/git/xxx/project
 ! a0f80ea..49177a3  master     -> origin/master  (unable to update local ref)

当我执行“git pull origin master”时,我得到:

error: Couldn't set ORIG_HEAD
fatal: Cannot update the ref 'ORIG_HEAD'.

我一直在寻找,却找不到原因


当前回答

参rm . / /遥控器/产地/主人

这对我很管用!

其他回答

我的解决方法如下:

Git远程删除源文件

这对我来说非常合适:

rm -rf .git/packed-refs .git/rr-cache

直接的答案

git remote prune origin
rm .git/refs/remotes/origin/master
git fetch
git pull origin master

按步骤执行上述命令

我有同样的错误,我从Eclipse中更新,我得到了许多错误。 所以我尝试从DOS命令窗口更新,并得到了同样的问题。

然后我尝试了解决方案“git gc -prune=now” 这给出了文件被锁定在refs目录中的消息。

Eclipse一定锁定了“refs”目录中的某些内容。 我找到的解决方案是关闭Eclipse。 然后我用“git PULL”命令从DOS更新了存储库,一切都运行正常。

使用gitbach line命令,使用git update-ref来更新本地分支的引用:

$ git update-ref -d refs/remotes/origin/[locked branch name]

然后使用$ git拉

[locked branch name]是由于提交id不匹配而发生错误的分支的名称。