跳转到主要内容

feature

feature.*
The config settings that start with feature. modify the defaults of a group of other config settings. These groups are created by the Git developer community as recommended defaults and are subject to change. In particular, new config options may be added with different defaults.

feature.experimental
Enable config options that are new to Git, and are being considered for future defaults. Config settings included here may be added or removed with each release, including minor version updates. These settings may have unintended interactions since they are so new. Please enable this setting if you are interested in providing feedback on experimental features. The new default values are:

  • fetch.negotiationAlgorithm=skipping may improve fetch negotiation times by skipping more commits at a time, reducing the number of round trips.

  • pack.useBitmapBoundaryTraversal=true may improve bitmap traversal times by walking fewer objects.

  • pack.allowPackReuse=multi may improve the time it takes to create a pack by reusing objects from multiple packs instead of just one.

  • pack.usePathWalk may speed up packfile creation and make the packfiles be significantly smaller in the presence of certain filename collisions with Git’s default name-hash.

  • init.defaultRefStorageFormat=reftable causes newly initialized repositories to use the reftable format for storing references. This new format solves issues with case-insensitive filesystems, compresses better and performs significantly better with many use cases. Refer to Documentation/technical/reftable.adoc for more information on this new storage format.

feature.manyFiles
Enable config options that optimize for repos with many files in the working directory. With many files, commands such as git status and git checkout may be slow and these new defaults improve performance:

  • index.skipHash=true speeds up index writes by not computing a trailing checksum. Note that this will cause Git versions earlier than 2.13.0 to refuse to parse the index and Git versions earlier than 2.40.0 will report a corrupted index during git fsck.

  • index.version=4 enables path-prefix compression in the index.

  • core.untrackedCache=true enables the untracked cache. This setting assumes that mtime is working on your machine.