git客户端之间的兼容性

时间:2018-12-11 14:40:10

标签: git nfs

我在两台不同的机器上使用git,该回购在机器A上,其中包含git 1.9.1

在机器B上,我通过NFS安装了仓库,并且机器B包含git 2.7.4

在机器A上一切正常,但是在机器B上尝试执行git fetch

error: inflate: data stream error (unknown compression method)
fatal: loose object cdf74c69f4317b887e499fbabdf4d291807058ff (stored in .git/objects/cd/f74c69f4317b887e499fbabdf4d291807058ff) is corrupt

请注意,git fsck --full1.9.1均未报告任何错误 而2.7.4却告诉我有一些错误的引用:

error: inflate: data stream error (unknown compression method)
error: unable to unpack header of .git/objects/cd/f74c69f4317b887e499fbabdf4d291807058ff
error: cdf74c69f4317b887e499fbabdf4d291807058ff: object corrupt or missing: .git/objects/cd/f74c69f4317b887e499fbabdf4d291807058ff
Checking object directories: 100% (256/256), done.
Checking objects: 100% (235088/235088), done.
error: refs/heads/QA-5595: invalid sha1 pointer 0000000000000000000000000000000000000000

git status在计算机B上也显示了已删除的文件。

两个版本之间是否存在已知的不兼容性?

谢谢

1 个答案:

答案 0 :(得分:0)

似乎umount / mount解决了这个问题。这让我想到了Gitlab与NFS有关的问题。我尝试了lsgit gc,但没有为我工作。进一步阅读检查 我们如何花两周的时间来寻找Linux内核中的NFS错误https://about.gitlab.com/2018/11/14/how-we-spent-two-weeks-hunting-an-nfs-bug/