2

我有一个大约 7000 个文件的项目,我正在尝试添加并提交大约 4000 个文件以进行上游初始推送

跑步

 git fsck --full 

返回时没有错误,但是当我执行

git push -u origin master

或者

git push origin master

我收到这样的错误

fatal: loose object 890b67d9a81c0061176d5a9a061cc6437eac283d (stored in .git/objects/89/0b67d9a81c0061176d5a9a061cc6437eac283d) is corrupt
error: failed to push some refs to 'ssh://git@xxxxxxx'

疯狂的是每次我运行推送命令时引用的松散对象都是不同的。

并且非常非常偶尔它实际上会在此消息中途失败之前开始将对象推向上游

Counting objects: 4551, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (4168/4168), done.
fatal: loose object c839cf225383c94e4bb2234fca9f9b8b2d645cde (stored in .git/objects/c8/39cf225383c94e4bb2234fca9f9b8b2d645cde) is corrupt
fatal: early EOF
error: failed to push some refs to 'ssh://git@xxxxxxxx'

我不知道该怎么办。

4

1 回答 1

1

它可能是:

  • 权限问题(ACL 对 的限制太大 .git/object/...
  • 句柄问题(.git/objects/c8/39cf225383c94e4bb2234fca9f9b8b2d645cde不知何故已被另一个进程锁定)
  • 损坏问题(在这种情况下,您需要检查该文件是否存在于另一个分支中(或者只是在 上可读master),然后将其复制到中.git/objects/c8
于 2012-05-10T08:30:01.343 回答