jelmer/dulwich

Git repo corrupt

Closed this issue · 2 comments

git fsck fails with this repository which means it's impossible to mirror it through git anywhere outside GitHub or inside GitHub through git push

$ git fsck
Checking object directories: 100% (256/256), done.
error in tree e5f1393aeea756d43d574504d932a887a36f1ce8: hasDotgit: contains '.git'
error in tree de750728425824837d8e774361b1033cbc0f2843: hasDotgit: contains '.git'
error in tree 4d73ba3255064784acec2a5102790c707d042043: hasDotgit: contains '.git'
warning in tree 4e06937e7b09c4932a75d85a342fc45047c840bc: badFilemode: contains bad file modes
warning in tree dc6afd8bd24556659fcbe6438ef6fc9f9c45db7a: badFilemode: contains bad file modes
warning in tree 976c4e2799faa3d4e67bbedd8d1d3327d09c1b2d: badFilemode: contains bad file modes
error in tree eaea53f8085ad0f9cd299b534774dfaef2bc26f1: hasDotgit: contains '.git'
Checking objects: 100% (27374/27374), done.

@jelmer Note that fixing this probably requires rewriting all of the history in the repo..... the corrupt commits seem to be quite deep in history.

jelmer commented

See #620

FWIW this isn't really "corruption" of the repository; the repository just contains a few objects that modern Git can handle but doesn't consider well-formatted. GitHub has decided to reject these. The Git repository itself also produces warnings:

warning in tag d6602ec5194c87b0fc87103ca4d67251c76f233a: missingTaggerEntry: invalid format - expected 'tagger' line