Git fetch 给出了"cannot lock ref"错误消息,但似乎无论如何都可以工作



有时我尝试运行git fetch时,我会得到以下响应:

错误:不能锁定ref'refs/promotes/onect/ branchName ':at xxxxxxx ,但预期 yyyyyyy

我采取的步骤是我的回忆,以下是:

  1. 我像通常一样从我的工作pc做了一个 git push
  2. 我回到家时做了一个不常见的git fetch。没有错误或警告;
  3. 在家工作后,我做了一个罕见的git push。没有错误或警告;
  4. 我今天到达工作时做了git fetch

步骤4引起了错误消息。我当地的存储库已签出了有问题的分支。我还是只是运行了git pull,它似乎有效。

这不是我第一次看到此错误消息。这是第一次发生时,我取了另一个团队的存储库,以更新我的本地副本,该副本不受欢迎(没有取消,没有工作,没有推动)一个月或两个月。当我推动更改时,我的同事就会出错。

因此,在两种情况下,它似乎与一段时间保持不变的本地存储库有些相关。但是两个样本很小,可以得出任何结论。

我想知道可能导致这一点。而且,更重要的是,如果确实是无害的,或者我有失去工作的风险。

sust @bernard-paulus的评论,您可以尝试

git gc --prune=now

对我有用

您也可以尝试

git for-each-ref 

我尝试了多个选项,但下面的命令对我有用。如果以上命令不起作用,请将其放在这里。

git Pull -p

相关内容

最新更新