On Mon, Dec 9, 2019 at 8:14 AM Jeff King <peff@xxxxxxxx> wrote: > > On Fri, Nov 15, 2019 at 03:15:39PM +0100, Christian Couder wrote: > > > From: Jeff King <peff@xxxxxxxx> > > > > Let's make it possible to configure if we want pack reuse or not. > > ...because? :) > > I mostly used it for debugging and performance testing. I don't think > there should be any big downside to using it that would cause people to > want to turn it off. But it _might_ cause larger packs, because we > wouldn't consider the reused objects as bases for finding new deltas. Ok, I changed the commit message to: Let's make it possible to configure if we want pack reuse or not. The main reason it might not be wanted is probably debugging and performance testing, though pack reuse _might_ cause larger packs, because we wouldn't consider the reused objects as bases for finding new deltas. > I think the documentation could mention this. And maybe make it a bit > more clear what "reuse" means. > > So maybe: > > diff --git a/Documentation/config/pack.txt b/Documentation/config/pack.txt > index 58323a351f..0dac580581 100644 > --- a/Documentation/config/pack.txt > +++ b/Documentation/config/pack.txt > @@ -28,8 +28,11 @@ all existing objects. You can force recompression by passing the -F option > to linkgit:git-repack[1]. > > pack.allowPackReuse:: > - When true, which is the default, Git will try to reuse parts > - of existing packfiles when preparing new packfiles. > + When true, and when reachability bitmaps are enabled, > + pack-objects will try to send parts of the bitmapped packfile > + verbatim. This can reduce memory and CPU usage to serve fetches, > + but might result in sending a slightly larger pack. Defaults to > + true. Yeah, great! I use the above in my current version. Thanks!