Re: [PATCH v3 7/9] pack-objects: introduce pack.allowPackReuse
On Mon, Dec 9, 2019 at 8:14 AM Jeff King <peff@peff.net> wrote:
Show 13 quoted lines
>
> On Fri, Nov 15, 2019 at 03:15:39PM +0100, Christian Couder wrote:
>
> > From: Jeff King <peff@peff.net>
> >
> > 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.Show 20 quoted lines
> 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!