All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] sequencer: leave auto maintenance to the end of a rebase
@ 2026-09-04  7:53 Thomas Bachem via GitGitGadget
  2026-09-04  7:53 ` [PATCH 1/2] sequencer: run auto maintenance once a rebase is done Thomas Bachem via GitGitGadget
                   ` (5 more replies)
  0 siblings, 6 replies; 50+ messages in thread
From: Thomas Bachem via GitGitGadget @ 2026-09-04  7:53 UTC (permalink / raw)
  To: git
  Cc: Phillip Wood, Patrick Steinhardt, Junio C Hamano,
	Johannes Schindelin, Thomas Bachem

While looking into the rerere lock race in [1], the "git commit" a rebase
spawns for a resolved pick turned out to be about the only place a rebase
with the merge backend runs auto maintenance, and it runs it against the
rebase itself. Phillip asked for auto maintenance to be kept out of a rebase
altogether [2], and for the merge backend to run it once at the end the way
the apply backend does [3]. Patrick would rather see that discussed on its
own [4], hence this series.

Patch 1 runs auto maintenance where the sequencer finishes a rebase, as the
apply backend does. Patch 2 then passes maintenance.auto=false and gc.auto=0
to the "git commit", "git merge" and exec commands a rebase spawns, so that
a rebase runs it once, at its end. Cherry-pick and revert are left as they
are.

Based on master. Independent of [1], which makes the rerere lock non-fatal:
with both, a rebase neither spawns the gc nor dies on one that something
else spawned.

[1] <pull.2214.git.1788337897490.gitgitgadget@gmail.com>

[2] <ca3b91b6-254c-4b86-adb8-da3217e9f6e7@gmail.com>

[3] <86efb07c-a0ce-49b0-b4eb-7d6b4bbaeccc@gmail.com>

[4] <apkwpKTGaMwTf0Hz@pks.im>

Thomas Bachem (2):
  sequencer: run auto maintenance once a rebase is done
  sequencer: keep auto maintenance out of the commands a rebase spawns

 sequencer.c                | 32 ++++++++++++++++++++++++++++++++
 t/t3418-rebase-continue.sh | 26 ++++++++++++++++++++++++++
 2 files changed, 58 insertions(+)


base-commit: 3cb9185f65410273787f74333cc027d2ea5daada
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-2217%2Fthomasbachem%2Frebase-auto-maintenance-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-2217/thomasbachem/rebase-auto-maintenance-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/2217
-- 
gitgitgadget

^ permalink raw reply	[flat|nested] 50+ messages in thread

end of thread, other threads:[~2026-09-22  7:38 UTC | newest]

Thread overview: 50+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-04  7:53 [PATCH 0/2] sequencer: leave auto maintenance to the end of a rebase Thomas Bachem via GitGitGadget
2026-09-04  7:53 ` [PATCH 1/2] sequencer: run auto maintenance once a rebase is done Thomas Bachem via GitGitGadget
2026-09-04 15:03   ` Phillip Wood
2026-09-04  7:53 ` [PATCH 2/2] sequencer: keep auto maintenance out of the commands a rebase spawns Thomas Bachem via GitGitGadget
2026-09-04 15:03   ` Phillip Wood
2026-09-04 15:55     ` Thomas Bachem
2026-09-04 15:51 ` [PATCH v2 0/3] sequencer: leave auto maintenance to the end of a sequence Thomas Bachem via GitGitGadget
2026-09-04 15:51   ` [PATCH v2 1/3] config: add git_config_append_parameter() Thomas Bachem via GitGitGadget
2026-09-07  8:14     ` Patrick Steinhardt
2026-09-07 13:24       ` Phillip Wood
2026-09-07 14:47         ` Patrick Steinhardt
2026-09-07 16:37       ` Thomas Bachem
2026-09-04 15:51   ` [PATCH v2 2/3] sequencer: run auto maintenance once a sequence is done Thomas Bachem via GitGitGadget
2026-09-07  8:14     ` Patrick Steinhardt
2026-09-07 16:35       ` Thomas Bachem
2026-09-08  5:50         ` Patrick Steinhardt
2026-09-08  7:46           ` Thomas Bachem
2026-09-07 13:25     ` Phillip Wood
2026-09-07 16:36       ` Thomas Bachem
2026-09-07 16:40         ` Phillip Wood
2026-09-04 15:51   ` [PATCH v2 3/3] sequencer: keep auto maintenance out of the commands a sequence spawns Thomas Bachem via GitGitGadget
2026-09-04 21:21     ` Junio C Hamano
2026-09-05  5:42       ` Thomas Bachem
2026-09-07  8:14     ` Patrick Steinhardt
2026-09-07 16:35       ` Thomas Bachem
2026-09-07 13:24     ` Phillip Wood
2026-09-07 16:37       ` Thomas Bachem
2026-09-08 10:28 ` [PATCH v3 0/3] sequencer: leave auto maintenance to the end of a sequence Thomas Bachem via GitGitGadget
2026-09-08 10:28   ` [PATCH v3 1/3] config: add git_config_append_parameter() Thomas Bachem via GitGitGadget
2026-09-08 10:28   ` [PATCH v3 2/3] rebase, cherry-pick, revert: run auto maintenance when done Thomas Bachem via GitGitGadget
2026-09-08 10:28   ` [PATCH v3 3/3] sequencer: disable auto maintenance in spawned commands Thomas Bachem via GitGitGadget
2026-09-08 15:53   ` [PATCH v3 0/3] sequencer: leave auto maintenance to the end of a sequence Junio C Hamano
2026-09-08 19:38     ` Kristoffer Haugsbakk
2026-09-09  5:57     ` Patrick Steinhardt
2026-09-10  8:25     ` Thomas Bachem
2026-09-09  8:25 ` [PATCH v4 " Thomas Bachem via GitGitGadget
2026-09-09  8:25   ` [PATCH v4 1/3] config: add git_config_append_parameter() Thomas Bachem via GitGitGadget
2026-09-11  7:34     ` Patrick Steinhardt
2026-09-14  7:12       ` Thomas Bachem
2026-09-09  8:25   ` [PATCH v4 2/3] rebase, cherry-pick, revert: run auto maintenance when done Thomas Bachem via GitGitGadget
2026-09-11  7:34     ` Patrick Steinhardt
2026-09-14  7:12       ` Thomas Bachem
2026-09-22  7:38       ` Thomas Bachem
2026-09-09  8:25   ` [PATCH v4 3/3] sequencer: disable auto maintenance in spawned commands Thomas Bachem via GitGitGadget
2026-09-09 15:40     ` Phillip Wood
2026-09-14  7:11       ` Thomas Bachem
2026-09-17 18:42 ` [PATCH v5 0/3] sequencer: leave auto maintenance to the end of a sequence Thomas Bachem via GitGitGadget
2026-09-17 18:42   ` [PATCH v5 1/3] config: add git_config_append_parameter() Thomas Bachem via GitGitGadget
2026-09-17 18:42   ` [PATCH v5 2/3] rebase, cherry-pick, revert: run auto maintenance when done Thomas Bachem via GitGitGadget
2026-09-17 18:42   ` [PATCH v5 3/3] sequencer: disable auto maintenance in spawned commands Thomas Bachem via GitGitGadget

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.