maintenance: create auto condition for loose-objects
authorDerrick Stolee <dstolee@microsoft.com>
Fri, 25 Sep 2020 12:33:33 +0000 (12:33 +0000)
committerJunio C Hamano <gitster@pobox.com>
Fri, 25 Sep 2020 17:53:04 +0000 (10:53 -0700)
commit3e220e60696ebc27c719b83adc6f734d6857521f
tree223f5099131fec5d15fb4ff4dee5321c3a361fbe
parent252cfb7cb86a33f7740c799748ee6c586931c7bc
maintenance: create auto condition for loose-objects

The loose-objects task deletes loose objects that already exist in a
pack-file, then place the remaining loose objects into a new pack-file.
If this step runs all the time, then we risk creating pack-files with
very few objects with every 'git commit' process. To prevent
overwhelming the packs directory with small pack-files, place a minimum
number of objects to justify the task.

The 'maintenance.loose-objects.auto' config option specifies a minimum
number of loose objects to justify the task to run under the '--auto'
option. This defaults to 100 loose objects. Setting the value to zero
will prevent the step from running under '--auto' while a negative value
will force it to run every time.

Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/config/maintenance.txt
builtin/gc.c
t/t7900-maintenance.sh