| git-maintenance(1) |
| ================== |
| |
| NAME |
| ---- |
| git-maintenance - Run tasks to optimize Git repository data |
| |
| |
| SYNOPSIS |
| -------- |
| [verse] |
| 'git maintenance' run [<options>] |
| |
| |
| DESCRIPTION |
| ----------- |
| Run tasks to optimize Git repository data, speeding up other Git commands |
| and reducing storage requirements for the repository. |
| |
| Git commands that add repository data, such as `git add` or `git fetch`, |
| are optimized for a responsive user experience. These commands do not take |
| time to optimize the Git data, since such optimizations scale with the full |
| size of the repository while these user commands each perform a relatively |
| small action. |
| |
| The `git maintenance` command provides flexibility for how to optimize the |
| Git repository. |
| |
| SUBCOMMANDS |
| ----------- |
| |
| run:: |
| Run one or more maintenance tasks. If one or more `--task` options |
| are specified, then those tasks are run in that order. Otherwise, |
| the tasks are determined by which `maintenance.<task>.enabled` |
| config options are true. By default, only `maintenance.gc.enabled` |
| is true. |
| |
| TASKS |
| ----- |
| |
| commit-graph:: |
| The `commit-graph` job updates the `commit-graph` files incrementally, |
| then verifies that the written data is correct. The incremental |
| write is safe to run alongside concurrent Git processes since it |
| will not expire `.graph` files that were in the previous |
| `commit-graph-chain` file. They will be deleted by a later run based |
| on the expiration delay. |
| |
| gc:: |
| Clean up unnecessary files and optimize the local repository. "GC" |
| stands for "garbage collection," but this task performs many |
| smaller tasks. This task can be expensive for large repositories, |
| as it repacks all Git objects into a single pack-file. It can also |
| be disruptive in some situations, as it deletes stale data. See |
| linkgit:git-gc[1] for more details on garbage collection in Git. |
| |
| OPTIONS |
| ------- |
| --auto:: |
| When combined with the `run` subcommand, run maintenance tasks |
| only if certain thresholds are met. For example, the `gc` task |
| runs when the number of loose objects exceeds the number stored |
| in the `gc.auto` config setting, or when the number of pack-files |
| exceeds the `gc.autoPackLimit` config setting. |
| |
| --quiet:: |
| Do not report progress or other information over `stderr`. |
| |
| --task=<task>:: |
| If this option is specified one or more times, then only run the |
| specified tasks in the specified order. If no `--task=<task>` |
| arguments are specified, then only the tasks with |
| `maintenance.<task>.enabled` configured as `true` are considered. |
| See the 'TASKS' section for the list of accepted `<task>` values. |
| |
| GIT |
| --- |
| Part of the linkgit:git[1] suite |