Subject: Re: [PATCH] builtin/pack-objects.c: introduce `pack.extraCruftTips`

From: Junio C Hamano <[email-masked]>
Date: Thu, 20 Apr 2023 11:12:34 -0700

Taylor Blau <[email-masked]> writes:

> This patch introduces a new configuration, `pack.extraCruftTips` which
> allows the caller to specify a program (or set of programs) whose output
> is treated as a set of objects to treat as "kept", even if they are
> unreachable and have aged out of the retention period.

I can see why this would make the implementation simpler, simply
because no existing codepaths that determines if an object is still
live knows about such a program hence all the codepaths by default
keep considering them expungeable crufts except for a very limited
set of codepaths that will pay attention to the program.  But it
makes me wonder if it would make the life of end-users simpler if we
reserve a special ref hierarchy, say "refs/crufts/*", than having to
write a program for doing something like this.

Thanks.