Git: “Corrompus lâche objet”

Chaque fois que je sors de ma télécommande, j'obtiens l'erreur suivante à propos de la compression. Quand je lance la compression manuelle, je reçois le même:

$ git gc
error: Could not read 3813783126d41a3200b35b6681357c213352ab31
fatal: bad tree object 3813783126d41a3200b35b6681357c213352ab31
error: failed to run repack

Personne ne sait, quoi faire à ce sujet?

De chat-fichier j'obtiens ceci:

$ git cat-file -t 3813783126d41a3200b35b6681357c213352ab31
error: unable to find 3813783126d41a3200b35b6681357c213352ab31
fatal: git cat-file 3813783126d41a3200b35b6681357c213352ab31: bad file

Et à partir de git fsck-je obtenir ceci ( ne sais pas si c'est réellement liés):

$ git fsck
error: inflate: data stream error (invalid distance too far back)
error: corrupt loose object '45ba4ceb93bc812ef20a6630bb27e9e0b33a012a'
fatal: loose object 45ba4ceb93bc812ef20a6630bb27e9e0b33a012a (stored in .git/objects/45/ba4ceb93bc812ef20a6630bb27e9e0b33a012a) is corrupted

Quelqu'un peut-il m'aider à déchiffrer ce?

  • Avez-vous essayé de regarder le dernier objet (45ba4ceb93bc812ef20a6630bb27e9e0b33a012a)?
  • Merci... mais comment faire un "look" à un objet? Encore nouveau pour git 🙂
  • Essayez git show.
  • git show me donne rien de plus que git fsck déjà fait malheureusement.
  • Linus Torvalds a écrit ce qui suit document utile à propos de cette erreur et comment reconstruire manuellement les gouttes si vous avez les fichiers: Comment récupérer corrompu objet blob Quelques astuces pour reconstruire les objets blob dans le but de résoudre un corrompu référentiel
  • Pouvez-vous ajouter des commentaires, ou de la modifier, de la accepté de répondre? Je suis exactement dans la même situation, et l'on a accepté la réponse ne semble pas contenir suffisamment de détails pour "Seulement les Travaux TM", mais plutôt de la force de me plonger dans les détails à moi-même.
  • git cat-file -t <SHA1> vous indiquera le type. Si non corrompu, vous pourrez alors faire git cat-file <type> <SHA1> pour voir le contenu (je l'ai utilisé pour un blob, je pense que ce sera également vous montrer le contenu d'autres types.)
  • Dans mon cas, c'était juste un problème d'autorisation. J'ai essayé de tirer à nouveau en tant que root et cela a fonctionné.
  • Connexes: stackoverflow.com/questions/801577/...

InformationsquelleAutor asgerhallas | 2010-11-23