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