logoalt Hacker News

CodesInChaos • today at 8:38 AM • 1 reply • view on HN

Does git support better compression algorithms than deflate, like zstd or brotli?


Replies

masklinn • today at 9:56 AM

No. You can configure the compression level but that's at far as it goes.

You can configure loose object and pack compression separately (core.compression and pack.compression) so loose object compression could be switched to an other algorithm as it's completely local[1] (likely a low-compression zstd), but pack files are part of the network exchange, so things are a bit more complicated there. Also an annoyance there is that git uses raw zlib there is no identifying header or anything.

There are old threads on the mailing list, as well as a gitlab issue.

Although you can also tune compression per pack when you create them explicitly, on $DAYJOB's repository in order to speed up gc some I have .keep packs which segregate images uncompressed in their own packs, because there's little point wasting cycles on zlib-compressing jpegs and pngs.

[1]: unless you're using the "dumb http" protocol, or performing (n)fs-mediated clones

➕ show 1 reply