This command provides a way to add cronjobs that run daily, hourly and weekly maintenance tasks on your git repositories.
This will update the .git/config
file in the repository with the following
configuration:
[maintenance]
auto = false
strategy = incremental
According to the man
page:
The incremental strategy uses the following schedule for each maintenance task:
• gc: disabled.
• commit-graph: hourly.
• prefetch: hourly.
• loose-objects: daily.
• incremental-repack: daily.
Each task will do something to make git faster in the repo. Further explanation
for these tasks (gc, commit-graph, etc.) can be found in the man
page.
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 git-gc(1) for more details on garbage collection in Git.