【发布时间】:2013-11-02 02:43:43
【问题描述】:
我在尝试 git fetch 远程分支时遇到以下错误:
错误:Ref refs/origin/remotes/my-branch 位于 some-hash 但预期为 another-hash 来自 github.com:my-repository ! some-hash my-branch -> origin/my-branch(无法更新本地参考)
我不知道刚才到底发生了什么。有什么启示吗?
【问题讨论】:
-
是否有人(可能是您自己)将修改后的历史记录从其他地方强制推送到远程存储库?
-
在同一行中,您可以查看
git log --pretty=oneline origin/my-branch以查看您自己存储库中的历史记录,然后查看 github 中的历史记录以查看那里的历史记录。如果它们不匹配,则意味着历史已被您或其他人强行更改。这很糟糕,改变历史的人也很糟糕。 -
有人搞砸了。你工作的地方经常发生 git 相关的问题吗?如果是这样,那么问:我们需要 git 的好处吗?如果是,请问:我们是否愿意花时间让每个人都接受培训?如果不接受这个,或者前面的,那么你的悟性就会自然而然地到来。
-
我找到了谁搞砸了
-
我在 SourceTree 中看到了这个错误,所以立即跑到 StackOverflow。在阅读了上面的答案(毫无疑问都是正确的)之后,我回到 SourceTree 并再次按下“Pull”。一切正常。吉特小精灵。他们今天早上很慢。