我只有分支主和我得到这个错误,每次我尝试“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 -rf .git/packed-refs .git/rr-cache

其他回答

这对我来说非常合适:

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

我是PC用户-重启。

说实话,这对我很管用。我解决了两个奇怪的git问题,我认为这是腐败的方式。

我已经删除了分支的本地引用:

git branch -d -r REPO/.git/refs/remotes/origin/BRANCHNAME

然后我就可以取回了。

或者更激进一点

rm -rf REPO/.git/refs/remotes/origin

这个方法每次都有效。

直接的答案

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

按步骤执行上述命令

确保执行git拉取的用户与创建存储库的用户相同。文件权限不正确。