Re: [PATCH 9/9] refs: add a '--required' flag to 'git refs optimize'
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Oct 13, 2025, 13:40 UTC
- Message-ID
- <xmqqwm4y538p.fsf@gitster.g>
- In-Reply-To
- <aOjsjpE1vuFUXXbh@pks.im>
Patrick Steinhardt <ps@pks.im> writes:
Show 7 quoted lines
>> 'git pack-refs' [--all] [--no-prune] [--auto] [--include <pattern>] [--exclude <pattern>] >> + [--required] > > Hm, I'm not a huge fan of that name. "--dry-run" might be a better name, > but on the other hand one might expect that such a command also yields > information about what happens or that the compaction should be > successful.
I had the same reaction. First I thought this would make the command fail if the requested action cannot be done, as it is required to fulfill the request, or something, but anything user asks to do is by default required in a sane world, so it does not make much sense.
If I understand the motivation behind this correctly, we want a cheap check similar to what is implicitly used before auto-gc kicks in (i.e., asking "do we have enough loose objects that makes us worried" without actually counting all the loose objects but estimating the number cheaply), but "--dry-run", while being much better than "--required" to convey the intention, has an extra connotation that it does a much more thorough job than mere estimating---doing almost the same thing as the real job but without leaving any lasting effect on the data---which makes the word inappropriate, too.
Perhaps "--check-" followed by a word specific to what we are trying to achieve (e.g., if we are trying to see if auto-compaction is necessary, "--check-for-auto" "check for auto compaction")? I dunno.