Subject: Re: Git files data formats documentation

From: Shawn Pearce <[email-masked]>
Date: Sat, 5 Aug 2006 12:22:33 -0400

A Large Angry SCM <[email-masked]> wrote:
> This information may be useful for reading and writing the various Git 
> files.
[snip]
> 	#	/* -  -  -  -  -  -  -  -  -  -  -  - *\
> 	#	 | This reflects version 3 pack files |
> 	#	\* -  -  -  -  -  -  -  -  -  -  -  - */
[snip]
> 	#	/* -  -  -  -  -  -  -  -  -  -  -  - *\
> 	#	 | This reflects version 2 pack files |
> 	#	\* -  -  -  -  -  -  -  -  -  -  -  - */

Thanks for taking the time to write these out.  The pack delta
formats were particularly helpful as it caused me to go back
and look at the unpacking code in jgit.

Apparently I wasn't handling the version 2 pack file correctly as I
didn't support copy-from-result; I had an infinite loop if the base
didn't decompress in one read (never happen right now, but could
in the future); and apparently my insert opcode implementation was
causing an infinite loop.  Nasty bugs.  I need to get more unit
tests written apparently.  :-)

-- 
Shawn.