Subject: Re: [PATCH] Documentation/git-bundle.txt: Dumping contents of any bundle

From: "Shawn O. Pearce" <[email-masked]>
Date: Thu, 1 Jan 2009 23:15:19 -0800

[email-masked] wrote:
> JK> diff --git a/builtin-unpack-objects.c b/builtin-unpack-objects.c
> OK, I wish you luck in the fruition of the new --dump-delta option, and
> can proofread the man pages involved, otherwise this is no area for
> junior programmer me.

This is rather insane.  There's very little data inside of a delta.
That's sort of the point of that level of compression, it takes
up very little disk space and yet describes the change made.
Almost nobody is going to want the delta without the base object
it applies onto.  No user of git is going to need that.  I'd rather
not carry dead code around in the tree for something nobody will
ever use.

FWIW, most Git deltas are "copy" instructions, they list a position
and count in the base to copy data *from*.  These take up less
space then "insert" instructions, where new text is placed into
the file.  As the delta generator favors a smaller delta, it tends
to create deltas that use the "copy" instruction more often than the
"insert" instruction.  So there is *very* little data in the delta,
just ranges to copy from somewhere else.  Without that other place
(the delta base) all you can do is guess about those bits.  Which you
can do just as well with a few flips of a fair coin.  :-)

-- 
Shawn.