From: Junio C Hamano Date: Tue, 20 Oct 2015 22:22:40 +0000 (-0700) Subject: Merge branch 'jc/doc-gc-prune-now' into maint X-Git-Tag: v2.6.3~33 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/ce555f38426e212ced5f2445bc6df1351af21cab?hp=-c Merge branch 'jc/doc-gc-prune-now' into maint "git gc" is safe to run anytime only because it has the built-in grace period to protect young objects. In order to run with no grace period, the user must make sure that the repository is quiescent. * jc/doc-gc-prune-now: Documentation/gc: warn against --prune= --- ce555f38426e212ced5f2445bc6df1351af21cab diff --combined Documentation/git-gc.txt index 52234987f9,6692fa7e34..fa1510480a --- a/Documentation/git-gc.txt +++ b/Documentation/git-gc.txt @@@ -54,17 -54,20 +54,20 @@@ all loose objects are combined into a s `git repack -d -l`. Setting the value of `gc.auto` to 0 disables automatic packing of loose objects. + -If the number of packs exceeds the value of `gc.autopacklimit`, +If the number of packs exceeds the value of `gc.autoPackLimit`, then existing packs (except those marked with a `.keep` file) are consolidated into a single pack by using the `-A` option of -'git repack'. Setting `gc.autopacklimit` to 0 disables +'git repack'. Setting `gc.autoPackLimit` to 0 disables automatic consolidation of packs. --prune=:: Prune loose objects older than date (default is 2 weeks ago, overridable by the config variable `gc.pruneExpire`). - --prune=all prunes loose objects regardless of their age. - --prune is on by default. + --prune=all prunes loose objects regardless of their age (do + not use --prune=all unless you know exactly what you are doing. + Unless the repository is quiescent, you will lose newly created + objects that haven't been anchored with the refs and end up + corrupting your repository). --prune is on by default. --no-prune:: Do not prune any loose objects. @@@ -101,18 -104,18 +104,18 @@@ branches ------------ [gc "refs/remotes/*"] reflogExpire = never - reflogexpireUnreachable = 3 days + reflogExpireUnreachable = 3 days ------------ -The optional configuration variable 'gc.rerereresolved' indicates +The optional configuration variable 'gc.rerereResolved' indicates how long records of conflicted merge you resolved earlier are kept. This defaults to 60 days. -The optional configuration variable 'gc.rerereunresolved' indicates +The optional configuration variable 'gc.rerereUnresolved' indicates how long records of conflicted merge you have not resolved are kept. This defaults to 15 days. -The optional configuration variable 'gc.packrefs' determines if +The optional configuration variable 'gc.packRefs' determines if 'git gc' runs 'git pack-refs'. This can be set to "notbare" to enable it within all non-bare repos or it can be set to a boolean value. This defaults to true.