Shawn Pearce [off-list ref] writes:
How blobs are written is very different, Junio's
implementation is strictly better than JGit's[1].
I do not think there can be a single ordering that is strictly
better than any other one. The "clump all objects in a delta family
and write them width-first, starting from the base object" may give
you a reasonable trade-off for a result of normal repack, but if you
repack (like I do) with very shallow --depth with wide --window to
really get a tight pack, a delta may end up having too may uncles
between it and its father, requiring a large seek to skip over all
the uncles in order to grab the delta data, after you reconstitute
the delta base object.