Le mardi 14 dÃcembre 2010 Ã 12:59 +0100, Christian Couder a Ãcrit : > On Tue, Dec 14, 2010 at 10:47 AM, Sylvestre Ledru > <sylvestre.ledru@xxxxxxxxxx> wrote: > > Le mardi 14 dÃcembre 2010 Ã 10:29 +0100, Christian Couder a Ãcrit : > >> On Mon, Dec 13, 2010 at 7:11 PM, Sylvestre Ledru > >> <sylvestre.ledru@xxxxxxxxxx> wrote: > >> > Le lundi 13 dÃcembre 2010 Ã 18:02 +0100, Christian Couder a Ãcrit : > >> >> On Mon, Dec 13, 2010 at 5:47 PM, Sylvestre Ledru > >> >> <sylvestre.ledru@xxxxxxxxxx> wrote: > >> >> > > >> >> > Le lundi 13 dÃcembre 2010 Ã 17:34 +0100, Christian Couder a Ãcrit : > >> >> >> Hi, > >> >> >> > >> >> >> On Mon, Dec 13, 2010 at 4:59 PM, Sylvestre Ledru > >> >> >> <sylvestre.ledru@xxxxxxxxxx> wrote: > >> >> >> > Hello guys, > >> >> >> > > >> >> >> > I have a small problem with a git repository and I haven't find a way to > >> >> >> > fix my problem. > >> >> >> > I am using git with gerrit [1] as frontend (even if I don't think it is > >> >> >> > related here). > >> >> >> > For an unknown reason, the repository just became corrupted. > >> >> >> > > >> >> >> > When I try to clone the repository straight with the file system, the > >> >> >> > following error is displayed: > >> >> >> > error: refs/changes/98/398/1 does not point to a valid object! > >> >> >> > error: refs/changes/98/398/2 does not point to a valid object! > >> >> >> > fatal: object cff52c24fba28408e7d021a8f35a717bef31521d is corrupted > >> >> >> > fatal: The remote end hung up unexpectedly > >> >> >> > > >> >> >> > git-prune & git-fsck both fail. > >> >> >> > > >> >> >> > Does anyone know how to repair this error ? > >> >> >> > >> >> >> Did you try what the FAQ suggests: > >> >> >> > >> >> >> https://git.wiki.kernel.org/index.php/GitFaq#How_to_fix_a_broken_repository.3F > >> >> > Yes. It shows an other error and it doesn't match the error described on > >> >> > this URL [1]. > >> >> > > >> >> > I get the following: > >> >> > error: refs/tags/5.3.0-beta-4 does not point to a valid object! > >> >> > fatal: object 555a7c359b2e589ec10822d9b56cdfeee0105fe0 is corrupted > >> >> > >> >> The FAQ says that you should try to replace any broken and/or missing > >> >> objects, so you should try to do that with object > >> >> 555a7c359b2e589ec10822d9b56cdfeee0105fe0 (as described in the FAQ) > >> >> even if the error message is not exactly the same. > >> > Well, after clean the error about the tags, it does not provide any > >> > interesting feedbacks like in the FAQ. > >> > > >> > Just some information [1] about some dangling commits (probably commit > >> > under review in gerrit). Nothing valuable and the problem still occurs > >> > on the client side. > >> > >> So you say that "git fsck --full" gives only dangling commits on the > >> server, and you still get messages like "fatal: object XXXXX is > >> corrupted" on the client when you try to clone with gerrit? > > Not exactly, when I try to clone it through gerrit, it is working: > > git clone ssh://sylvestre.ledru@xxxxxxxxxxxxxx:29418/scilab > > A bare clone works also. > > > > It is failing when I am using git-daemon (git clone > > git://git.scilab.org/scilab) or a straight clone (git > > clone /home/git/repositories/repo.git). > > This is very strange, are you sure you cannot use the resulting repo > when it "fails"? > What happens when you run "git fsck --full" on the resulting repos? > > > Both with the same error: > > error: refs/changes/98/398/1 does not point to a valid object! > > error: refs/changes/98/398/2 does not point to a valid object! > > Did you try to see which objects these refs are pointing to, and if > they are on the server? In fact, we have some progress on the issue. It looks like, at some point, two tags have been badly created [1]. Here is what Bruno did to fix the issue: 1 - Add valid references I put some valid commit id in refs/changes/98/398/{1,2} 2 - Find out what the corrupted object was for $> git cat-file -t cff52c24fba28408e7d021a8f35a717bef31521d tag $> cat refs/tags/5.3.0-beta-4 cff52c24fba28408e7d021a8f35a717bef31521d $> git tag -d 5.3.0-beta-4 3 - Server complains : fatal: git upload-pack: unable to fork git-pack-objects $> git gc (on the server) Solved this problem. Hope this helps for others, Sylvestre [1] Looks at my mail archive, the guy who created the tag did it this way: [$SHELL] cd /home/git/repositories/scilab.git [$SHELL] git tag -d 5.3.0-beta-4 [$SHELL] git tag -m "Scilab 5.3.0 Beta 4 Version" 5.3.0-beta-4 96b0b8e6d621a7ea7c88d63e10d57908689632ed -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html