Re: Forcing GC to always fail
From: Bryan Turner <hidden>
Date: 2018-11-29 02:51:42
On Wed, Nov 28, 2018 at 5:19 PM Junio C Hamano [off-list ref] wrote:
quoted
Another issue with the canned steps for "git gc" is that it means it can't be used to do specific types of cleanup on a different schedule from others. For example, we use "git pack-refs" directly to frequently pack the refs in our repositories, separate from "git repack" + "git prune" for repacking objects. That allows us to keep our refs packed better without incurring the full overhead of constantly building new packs.I am not sure if the above is an example of things that are good. We keep individual "pack-refs" and "rev-list | pack-objects" available exactly to give finer grained control to repository owners, and "gc" is meant to be one-size-fits-all easy to run by end users. Adding options to "git gc --no-reflog --pack-refs" to complicate it sounds somewhat backwards.
I think we're in agreement there. I was citing the fact that GC isn't good for targeted maintenance as a reason why we use "pack-refs" directly, which sounds like what you're saying as well. I don't think that inflating GC with options to skip specific steps is a good idea, but that does mean that, for those targeted operations, we need to use the lower-level commands directly, rather than GC. Bryan