1gc.aggressiveDepth:: 2 The depth parameter used in the delta compression 3 algorithm used by 'git gc --aggressive'. This defaults 4 to 50. 5 6gc.aggressiveWindow:: 7 The window size parameter used in the delta compression 8 algorithm used by 'git gc --aggressive'. This defaults 9 to 250. 10 11gc.auto:: 12 When there are approximately more than this many loose 13 objects in the repository, `git gc --auto` will pack them. 14 Some Porcelain commands use this command to perform a 15 light-weight garbage collection from time to time. The 16 default value is 6700. Setting this to 0 disables it. 17 18gc.autoPackLimit:: 19 When there are more than this many packs that are not 20 marked with `*.keep` file in the repository, `git gc 21 --auto` consolidates them into one larger pack. The 22 default value is 50. Setting this to 0 disables it. 23 24gc.autoDetach:: 25 Make `git gc --auto` return immediately and run in background 26 if the system supports it. Default is true. 27 28gc.bigPackThreshold:: 29 If non-zero, all packs larger than this limit are kept when 30 `git gc` is run. This is very similar to `--keep-base-pack` 31 except that all packs that meet the threshold are kept, not 32 just the base pack. Defaults to zero. Common unit suffixes of 33 'k', 'm', or 'g' are supported. 34+ 35Note that if the number of kept packs is more than gc.autoPackLimit, 36this configuration variable is ignored, all packs except the base pack 37will be repacked. After this the number of packs should go below 38gc.autoPackLimit and gc.bigPackThreshold should be respected again. 39 40gc.writeCommitGraph:: 41 If true, then gc will rewrite the commit-graph file when 42 linkgit:git-gc[1] is run. When using linkgit:git-gc[1] 43 '--auto' the commit-graph will be updated if housekeeping is 44 required. Default is false. See linkgit:git-commit-graph[1] 45 for details. 46 47gc.logExpiry:: 48 If the file gc.log exists, then `git gc --auto` will print 49 its content and exit with status zero instead of running 50 unless that file is more than 'gc.logExpiry' old. Default is 51 "1.day". See `gc.pruneExpire` for more ways to specify its 52 value. 53 54gc.packRefs:: 55 Running `git pack-refs` in a repository renders it 56 unclonable by Git versions prior to 1.5.1.2 over dumb 57 transports such as HTTP. This variable determines whether 58 'git gc' runs `git pack-refs`. This can be set to `notbare` 59 to enable it within all non-bare repos or it can be set to a 60 boolean value. The default is `true`. 61 62gc.pruneExpire:: 63 When 'git gc' is run, it will call 'prune --expire 2.weeks.ago'. 64 Override the grace period with this config variable. The value 65 "now" may be used to disable this grace period and always prune 66 unreachable objects immediately, or "never" may be used to 67 suppress pruning. This feature helps prevent corruption when 68 'git gc' runs concurrently with another process writing to the 69 repository; see the "NOTES" section of linkgit:git-gc[1]. 70 71gc.worktreePruneExpire:: 72 When 'git gc' is run, it calls 73 'git worktree prune --expire 3.months.ago'. 74 This config variable can be used to set a different grace 75 period. The value "now" may be used to disable the grace 76 period and prune `$GIT_DIR/worktrees` immediately, or "never" 77 may be used to suppress pruning. 78 79gc.reflogExpire:: 80gc.<pattern>.reflogExpire:: 81 'git reflog expire' removes reflog entries older than 82 this time; defaults to 90 days. The value "now" expires all 83 entries immediately, and "never" suppresses expiration 84 altogether. With "<pattern>" (e.g. 85 "refs/stash") in the middle the setting applies only to 86 the refs that match the <pattern>. 87 88gc.reflogExpireUnreachable:: 89gc.<pattern>.reflogExpireUnreachable:: 90 'git reflog expire' removes reflog entries older than 91 this time and are not reachable from the current tip; 92 defaults to 30 days. The value "now" expires all entries 93 immediately, and "never" suppresses expiration altogether. 94 With "<pattern>" (e.g. "refs/stash") 95 in the middle, the setting applies only to the refs that 96 match the <pattern>. 97 98gc.rerereResolved:: 99 Records of conflicted merge you resolved earlier are 100 kept for this many days when 'git rerere gc' is run. 101 You can also use more human-readable "1.month.ago", etc. 102 The default is 60 days. See linkgit:git-rerere[1]. 103 104gc.rerereUnresolved:: 105 Records of conflicted merge you have not resolved are 106 kept for this many days when 'git rerere gc' is run. 107 You can also use more human-readable "1.month.ago", etc. 108 The default is 15 days. See linkgit:git-rerere[1].