Re: Inspecting a corrupt git object
From: Thomas Rast <hidden>
Date: 2016-06-15 22:49:14
Magnus Bäck wrote:
$ head -n 1 /tmp/hexdump_corrupt.txt 00000000 78 9c 2b 29 4a 4d 55 30 32 36 62 30 34 30 30 33 |x.+)JMU026b04003| $ head -n 1 /tmp/hexdump_okay.txt 00000000 78 01 2b 29 4a 4d 55 30 32 36 62 30 34 30 30 33 |x.+)JMU026b04003| From what I gather from the community book and Pro Git, a git object file is a deflated representation of the object type as a string, the payload size, a null byte, and the payload. Is there a standard tool for inflating the file back so that I can inspect what the actual difference between these two are? Short of writing a tool utilizing zlib, at least.
I'm sure it's a one-liner in almost any scripting language, e.g. you
can use
python -c 'import sys,zlib; sys.stdout.write(zlib.decompress(open(sys.argv[1]).read()))'
with a filename argument if you have Python at hand.
--
Thomas Rast
trast@{inf,student}.ethz.ch