]> git.ipfire.org Git - thirdparty/git.git/blame - Documentation/config/feature.txt
fetch: add fetch.writeCommitGraph config setting
[thirdparty/git.git] / Documentation / config / feature.txt
CommitLineData
c6cc4c5a
DS
1feature.*::
2 The config settings that start with `feature.` modify the defaults of
3 a group of other config settings. These groups are created by the Git
4 developer community as recommended defaults and are subject to change.
5 In particular, new config options may be added with different defaults.
6
aaf633c2
DS
7feature.experimental::
8 Enable config options that are new to Git, and are being considered for
9 future defaults. Config settings included here may be added or removed
10 with each release, including minor version updates. These settings may
11 have unintended interactions since they are so new. Please enable this
12 setting if you are interested in providing feedback on experimental
13 features. The new default values are:
14+
15* `pack.useSparse=true` uses a new algorithm when constructing a pack-file
16which can improve `git push` performance in repos with many files.
17+
18* `fetch.negotiationAlgorithm=skipping` may improve fetch negotiation times by
19skipping more commits at a time, reducing the number of round trips.
50f26bd0
DS
20+
21* `fetch.writeCommitGraph=true` writes a commit-graph after every `git fetch`
22command that downloads a pack-file from a remote. Using the `--split` option,
23most executions will create a very small commit-graph file on top of the
24existing commit-graph file(s). Occasionally, these files will merge and the
25write may take longer. Having an updated commit-graph file helps performance
26of many Git commands, including `git merge-base`, `git push -f`, and
27`git log --graph`.
aaf633c2 28
c6cc4c5a
DS
29feature.manyFiles::
30 Enable config options that optimize for repos with many files in the
31 working directory. With many files, commands such as `git status` and
32 `git checkout` may be slow and these new defaults improve performance:
33+
34* `index.version=4` enables path-prefix compression in the index.
35+
36* `core.untrackedCache=true` enables the untracked cache. This setting assumes
37that mtime is working on your machine.