首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >git报告"sha1失配“

git报告"sha1失配“
EN

Stack Overflow用户
提问于 2010-08-26 15:25:33
回答 1查看 2.3K关注 0票数 4

在运行git fsck --full --strict命令时,我们遇到以下问题:

代码语言:javascript
复制
error: sha1 mismatch ced885d12a0677f2db9025e1e684c72e67283fcd

error: ced885d12a0677f2db9025e1e684c72e67283fcd: object corrupt or missing
error: sha1 mismatch cf5a1546bd2de5611eaf6136fb5ca02b4e358bec

error: cf5a1546bd2de5611eaf6136fb5ca02b4e358bec: object corrupt or missing
error: sha1 mismatch cf5d9d5723014921370de479c54a73230c86a981

error: cf5d9d5723014921370de479c54a73230c86a981: object corrupt or missing
error: sha1 mismatch cf675ce5bc5eeb5937441c6a02976cf2fa40076b

error: cf675ce5bc5eeb5937441c6a02976cf2fa40076b: object corrupt or missing
error: sha1 mismatch cf7c5156cf127eb7141505946df51b2b57925a50

error: cf7c5156cf127eb7141505946df51b2b57925a50: object corrupt or missing
dangling commit 3468455f0d9d055bbe957744aa10e670469d3912
dangling commit daeec54632203157a70bae93b9d7c3290820c2f9
(more dangling commit messages)

(注意:我并不真正关心那些悬空的提交消息。我关注的是sha1失配问题。

我对此消息的解释是,git从有效负载中重新计算sha1,但是发现了一个不同于指定对象的sha1。存储库中没有缺少对象(我检查了w/ git cat文件)。

奇怪的是,如果我再次运行命令,我仍然有sha1消息,但是对于不同的对象:

代码语言:javascript
复制
error: sha1 mismatch 1452752024456a509540591c4879b3e3534f457e

error: 1452752024456a509540591c4879b3e3534f457e: object corrupt or missing
error: sha1 mismatch 16e08310d7182e97092d2783c911dbcf66538238

error: 16e08310d7182e97092d2783c911dbcf66538238: object corrupt or missing
dangling commit 3468455f0d9d055bbe957744aa10e670469d3912

注意:存储库在两次运行之间没有更改。

我们正在运行Linux,当前的git版本是:

代码语言:javascript
复制
$git --version
git version 1.7.2.2.170.g5c7f2

错误出现在以前的版本(1.6.5.rc2.18.g6d8b)中。这些git是用gcc 3.4.4从源头建造的。

但是,当我在另一个主机上复制存储库时,git fsck报告根本没有问题。那里的git版本是1.7.2.1 (由Fedora提供)。

我提出了以下意见:

  1. 具有无效sha1的对象通常在相同的范围内(在第一个示例中,sha1s以ce或cf开头),错误在fsck运行期间在很短的时间内触发。我相信git会进行有序扫描(或者在包中对对象进行排序),

  1. ,这些对象是相对较大的块(>900 k)
  2. ,我们已经运行了一个15分钟的完整memtest通行证,以检查可能的硬件内存故障。我们还没发现任何问题。在此服务器上没有观察到其他奇怪的行为,它也执行了许多其他非git tasks.
  3. git gc不抱怨

的行为。

迄今为止的假设:

  1. 这个问题是由git (库版本)的不正确构建引起的。compiler?)
  2. Our memtest未能找到真正的内存,problem.
  3. There是git-fsck sha1计算中的一个微妙缺陷,它是随机(或更准确地说是在某些短时间窗口内)对大块进行计算的。

我们怎样才能解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-02-27 19:40:59

一定是硬件出了问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3576621

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档