git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tao Klerks <tao@klerks.biz>
To: Derrick Stolee <derrickstolee@github.com>
Cc: git <git@vger.kernel.org>
Subject: Re: Auto packing the repository - foreground or background in Windows?
Date: Thu, 8 Dec 2022 15:52:07 +0100	[thread overview]
Message-ID: <CAPMMpoii52KrR2MBpPdSEH8-jc7uMPzi4DH5g2bchwd-RPNTJw@mail.gmail.com> (raw)
In-Reply-To: <4dcad1f5-9ebd-d15a-b663-a3513ae1bcb8@github.com>

On Tue, Dec 6, 2022 at 7:03 PM Derrick Stolee <derrickstolee@github.com> 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"?

  parent reply	other threads:[~2022-12-08 14:52 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-01 12:25 Auto packing the repository - foreground or background in Windows? Tao Klerks
2022-12-06 18:03 ` Derrick Stolee
2022-12-06 19:19   ` Ævar Arnfjörð Bjarmason
2022-12-06 22:41   ` Jeff Hostetler
2022-12-08 14:29     ` Tao Klerks
2022-12-08 14:52   ` Tao Klerks [this message]
2022-12-09 15:11     ` Derrick Stolee

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAPMMpoii52KrR2MBpPdSEH8-jc7uMPzi4DH5g2bchwd-RPNTJw@mail.gmail.com \
    --to=tao@klerks.biz \
    --cc=derrickstolee@github.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).