Subject: [PATCH 0/2] Allow configuration for loose-objects maintenance task

From: "Derrick Stolee via GitGitGadget" <[email-masked]>
Date: Mon, 24 Mar 2025 00:51:49 +0000

The loose-objects task for the git maintenance run command has a hard-coded
limit. The limit exists by default for the purposes of background
maintenance, but can be misleading if users truly want to clean up all loose
objects in one command (and don't want to use git repack). This adds a new
maintenance.loose-objects.batchSize config option to help users adjust this
value up or down.

When testing, I noticed that progress indicators were not always provided
when isatty(2) is false. This is because the --[no-]quiet option was not
appropriately passing to child processes. A small change fixes this before
the config is added, so we can test the results using stderr output.

Thanks,

 * Stolee

Derrick Stolee (2):
  maintenance: force progress/no-quiet to children
  maintenance: add loose-objects.batchSize config

 Documentation/config/maintenance.adoc |  5 +++++
 Documentation/git-maintenance.adoc    | 18 ++++++++++-------
 builtin/gc.c                          | 20 +++++++++++++++++++
 t/t7900-maintenance.sh                | 28 +++++++++++++++++++++++++++
 4 files changed, 64 insertions(+), 7 deletions(-)

base-commit: 683c54c999c301c2cd6f715c411407c413b1d84e
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1885%2Fderrickstolee%2Floose-objects-batch-size-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1885/derrickstolee/loose-objects-batch-size-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/1885
-- 
gitgitgadget