2 This boolean config option controls whether some commands run
3 `git maintenance run --auto` after doing their normal work. Defaults
7 This string config option provides a way to specify one of a few
8 recommended schedules for background maintenance. This only affects
9 which tasks are run during `git maintenance run --schedule=X`
10 commands, provided no `--task=<task>` arguments are provided.
11 Further, if a `maintenance.<task>.schedule` config value is set,
12 then that value is used instead of the one provided by
13 `maintenance.strategy`. The possible strategy strings are:
15 * `none`: This default setting implies no task are run at any schedule.
16 * `incremental`: This setting optimizes for performing small maintenance
17 activities that do not delete any data. This does not schedule the `gc`
18 task, but runs the `prefetch` and `commit-graph` tasks hourly and the
19 `loose-objects` and `incremental-repack` tasks daily.
21 maintenance.<task>.enabled::
22 This boolean config option controls whether the maintenance task
23 with name `<task>` is run when no `--task` option is specified to
24 `git maintenance run`. These config values are ignored if a
25 `--task` option exists. By default, only `maintenance.gc.enabled`
28 maintenance.<task>.schedule::
29 This config option controls whether or not the given `<task>` runs
30 during a `git maintenance run --schedule=<frequency>` command. The
31 value must be one of "hourly", "daily", or "weekly".
33 maintenance.commit-graph.auto::
34 This integer config option controls how often the `commit-graph` task
35 should be run as part of `git maintenance run --auto`. If zero, then
36 the `commit-graph` task will not run with the `--auto` option. A
37 negative value will force the task to run every time. Otherwise, a
38 positive value implies the command should run when the number of
39 reachable commits that are not in the commit-graph file is at least
40 the value of `maintenance.commit-graph.auto`. The default value is
43 maintenance.loose-objects.auto::
44 This integer config option controls how often the `loose-objects` task
45 should be run as part of `git maintenance run --auto`. If zero, then
46 the `loose-objects` task will not run with the `--auto` option. A
47 negative value will force the task to run every time. Otherwise, a
48 positive value implies the command should run when the number of
49 loose objects is at least the value of `maintenance.loose-objects.auto`.
50 The default value is 100.
52 maintenance.incremental-repack.auto::
53 This integer config option controls how often the `incremental-repack`
54 task should be run as part of `git maintenance run --auto`. If zero,
55 then the `incremental-repack` task will not run with the `--auto`
56 option. A negative value will force the task to run every time.
57 Otherwise, a positive value implies the command should run when the
58 number of pack-files not in the multi-pack-index is at least the value
59 of `maintenance.incremental-repack.auto`. The default value is 10.