switch: mention the --detach option when dying due to lack of a branch
[git/debian.git] / Documentation / config / maintenance.txt
blob18f056213145e595d0a57792e716f29521122997
1 maintenance.auto::
2         This boolean config option controls whether some commands run
3         `git maintenance run --auto` after doing their normal work. Defaults
4         to true.
6 maintenance.strategy::
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, the
19   `loose-objects` and `incremental-repack` tasks daily, and the `pack-refs`
20   task weekly.
22 maintenance.<task>.enabled::
23         This boolean config option controls whether the maintenance task
24         with name `<task>` is run when no `--task` option is specified to
25         `git maintenance run`. These config values are ignored if a
26         `--task` option exists. By default, only `maintenance.gc.enabled`
27         is true.
29 maintenance.<task>.schedule::
30         This config option controls whether or not the given `<task>` runs
31         during a `git maintenance run --schedule=<frequency>` command. The
32         value must be one of "hourly", "daily", or "weekly".
34 maintenance.commit-graph.auto::
35         This integer config option controls how often the `commit-graph` task
36         should be run as part of `git maintenance run --auto`. If zero, then
37         the `commit-graph` task will not run with the `--auto` option. A
38         negative value will force the task to run every time. Otherwise, a
39         positive value implies the command should run when the number of
40         reachable commits that are not in the commit-graph file is at least
41         the value of `maintenance.commit-graph.auto`. The default value is
42         100.
44 maintenance.loose-objects.auto::
45         This integer config option controls how often the `loose-objects` task
46         should be run as part of `git maintenance run --auto`. If zero, then
47         the `loose-objects` task will not run with the `--auto` option. A
48         negative value will force the task to run every time. Otherwise, a
49         positive value implies the command should run when the number of
50         loose objects is at least the value of `maintenance.loose-objects.auto`.
51         The default value is 100.
53 maintenance.incremental-repack.auto::
54         This integer config option controls how often the `incremental-repack`
55         task should be run as part of `git maintenance run --auto`. If zero,
56         then the `incremental-repack` task will not run with the `--auto`
57         option. A negative value will force the task to run every time.
58         Otherwise, a positive value implies the command should run when the
59         number of pack-files not in the multi-pack-index is at least the value
60         of `maintenance.incremental-repack.auto`. The default value is 10.