In addition to approxidate-style values ("2.months.ago", "yesterday"),
consumers of 'gc.*expire*' configuration variables also accept and
respect 'now'/'all' ("do it immediately") and 'never'/'false' ("suppress
entirely").

Suggested-by: Michael Haggerty <mhag...@alum.mit.edu>
Signed-off-by: Eric Sunshine <sunsh...@sunshineco.com>
---

Reference: http://article.gmane.org/gmane.comp.version-control.git/274325

I sneaked in a minor whitespace fix.

 Documentation/config.txt | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/Documentation/config.txt b/Documentation/config.txt
index 1a8a399..cc920c0 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -1307,20 +1307,22 @@ gc.packRefs::
 gc.pruneExpire::
        When 'git gc' is run, it will call 'prune --expire 2.weeks.ago'.
        Override the grace period with this config variable.  The value
-       "now" may be used to disable this  grace period and always prune
-       unreachable objects immediately.
+       "now" may be used to disable this grace period and always prune
+       unreachable objects immediately; or "never" to suppress pruning.
 
 gc.worktreePruneExpire::
        When 'git gc' is run, it calls
        'git worktree prune --expire 3.months.ago'.
        This config variable can be used to set a different grace
        period. The value "now" may be used to disable the grace
-       period and prune $GIT_DIR/worktrees immediately.
+       period and prune $GIT_DIR/worktrees immediately; or "never" to
+       suppress pruning.
 
 gc.reflogExpire::
 gc.<pattern>.reflogExpire::
        'git reflog expire' removes reflog entries older than
-       this time; defaults to 90 days.  With "<pattern>" (e.g.
+       this time; defaults to 90 days. The value "all" expires all
+       entries; and "false" disables expiration. With "<pattern>" (e.g.
        "refs/stash") in the middle the setting applies only to
        the refs that match the <pattern>.
 
@@ -1328,7 +1330,8 @@ gc.reflogExpireUnreachable::
 gc.<ref>.reflogExpireUnreachable::
        'git reflog expire' removes reflog entries older than
        this time and are not reachable from the current tip;
-       defaults to 30 days.  With "<pattern>" (e.g. "refs/stash")
+       defaults to 30 days. The value "all" expires all entries; and
+       "false" disables expiration. With "<pattern>" (e.g. "refs/stash")
        in the middle, the setting applies only to the refs that
        match the <pattern>.
 
-- 
2.5.0.rc3.407.g68aafd0

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to