Re: Auto packing the repository - foreground or background in Windows?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Dec 6, 2022 at 7:03 PM Derrick Stolee <derrickstolee@xxxxxxxxxx> wrote:
>
> Instead, the modern recommendation for repositories where "git gc --auto"
> would be slow is to run "git maintenance start" which will schedule
> background maintenance jobs with the Windows scheduler. Those processes
> are built to do updates that are non-invasive to concurrent foreground
> processes. It also sets config to avoid "git gc --auto" commands at the
> end of foreground Git processes.
>
> See [1] for more details.
>
> [1] https://git-scm.com/docs/git-maintenance
>

Thanks Stolee, I've known about the existence of this system for a
while, but I can't quite figure out what's recommended for who, when,
given the doc at https://git-scm.com/docs/git-maintenance

Clearly on Windows, one reason to do "git maintenance start" is to
avoid foregrounded "git gc --auto" runs later. That's a clear enough
benefit to say "frequent users of large repos on windows *should* run
'git maintenance start' (or have some setup process or GUI do it for
them) on those large repos".

Is there a corresponding tangible benefit on MacOS and/or Linux, over
simply getting "git gc --auto" do its backgrounded thing when it feels
like it? Or is there an eventual plan to *switch* from the current
"git gc --auto" spawning to a "git maintenance start" execution when
trigger conditions are met? Are there any *dis*advantages to running
"git maintenance start" in general or on any given platform?

For "my users", I have something like Scalar that can start the
maintenance on the repo where it's needed - but it seems like there
will be lots of users out there in the world who clone things like the
linux repo, which looks like it is big enough to warrant these kinds
of concerns, but it doesn't seem obvious that anyone will ever find
"https://git-scm.com/docs/git-maintenance"; and decide to run "git
maintenance start" on their own...

As I noted in another email, I propose to replace "Auto packing the
repository for optimum performance" with something like "Auto packing
the repository for optimum performance; to run this kind of
maintenance in the background, see 'git maintenance' at
https://git-scm.com/docs/git-maintenance."; - but I imagine I'm missing
a bigger picture / a long-term plan for how these two mechanisms
should interact.

My apologies if I've missed one or many conversations about this on
the list, but maybe a pointer here can also help me add directional
hints at https://git-scm.com/docs/git-maintenance for "outside users"?



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux