git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Johannes Schindelin <Johannes.Schindelin@gmx.de>
To: Junio C Hamano <gitster@pobox.com>
Cc: Brandon Casey <casey@nrlssc.navy.mil>,
	Jakub Narebski <jnareb@gmail.com>, Nicolas Pitre <nico@cam.org>,
	git@vger.kernel.org
Subject: Re: [PATCH v4] gc: call "prune --expire 2.weeks.ago" by default
Date: Wed, 12 Mar 2008 21:56:31 +0100 (CET)	[thread overview]
Message-ID: <alpine.LSU.1.00.0803122156080.1656@racer.site> (raw)
In-Reply-To: <alpine.LSU.1.00.0803122153440.1656@racer.site>

And here is the interdiff:

 Documentation/config.txt |    5 ++---
 Documentation/git-gc.txt |   23 +++++------------------
 builtin-gc.c             |    9 ++-------
 3 files changed, 9 insertions(+), 28 deletions(-)

diff --git a/Documentation/config.txt b/Documentation/config.txt
index db5b2dc..a2f1df2 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -591,9 +591,8 @@ gc.packrefs::
 	prevent `git pack-refs` from being run from `git gc`.
 
 gc.pruneexpire::
-	When `git gc` is run without `--prune`, it will still call
-	`prune`, but with `--expire 2.weeks.ago`.  Override the value
-	with this config variable.
+	When `git gc` is run, it will call `prune --expire 2.weeks.ago`.
+	Override the grace period with this config variable.
 
 gc.reflogexpire::
 	`git reflog expire` removes reflog entries older than
diff --git a/Documentation/git-gc.txt b/Documentation/git-gc.txt
index 2042d9f..229a7c9 100644
--- a/Documentation/git-gc.txt
+++ b/Documentation/git-gc.txt
@@ -8,7 +8,7 @@ git-gc - Cleanup unnecessary files and optimize the local repository
 
 SYNOPSIS
 --------
-'git-gc' [--prune] [--aggressive] [--auto] [--quiet]
+'git-gc' [--aggressive] [--auto] [--quiet]
 
 DESCRIPTION
 -----------
@@ -25,23 +25,6 @@ operating performance. Some git commands may automatically run
 OPTIONS
 -------
 
---prune::
-	Usually `git-gc` packs refs, expires old reflog entries,
-	packs loose objects,
-	and removes old 'rerere' records.  Unilateral removal
-	of unreferenced loose objects is an unsafe operation
-	while other git operations are in progress, so it is not
-	done by default.
-+
-Instead, `git-prune` is called with an option telling it to expire
-only unreferenced loose objects that are at least 2 weeks old.  Set
-the config variable `gc.pruneexpire` to override this grace period.
-+
-Pass `--prune` to expire all unreferenced loose objects, but only
-when you know nobody else is creating new objects in the
-repository at the same time (e.g. never use this option
-in a cron script).
-
 --aggressive::
 	Usually 'git-gc' runs very quickly while providing good disk
 	space utilization and performance.  This option will cause
@@ -110,6 +93,10 @@ the value, the more time is spent optimizing the delta compression.  See
 the documentation for the --window' option in linkgit:git-repack[1] for
 more details.  This defaults to 10.
 
+The optional configuration variable 'gc.pruneExpire' controls how old
+the unreferenced loose objects have to be before they are pruned.  The
+default is "2 weeks ago".
+
 See Also
 --------
 linkgit:git-prune[1]
diff --git a/builtin-gc.c b/builtin-gc.c
index 9663fae..8bd54d8 100644
--- a/builtin-gc.c
+++ b/builtin-gc.c
@@ -32,7 +32,7 @@ static char *prune_expire = "2.weeks.ago";
 static const char *argv_pack_refs[] = {"pack-refs", "--all", "--prune", NULL};
 static const char *argv_reflog[] = {"reflog", "expire", "--all", NULL};
 static const char *argv_repack[MAX_ADD] = {"repack", "-d", "-l", NULL};
-static const char *argv_prune[] = {"prune", NULL, NULL, NULL};
+static const char *argv_prune[] = {"prune", "--expire", NULL, NULL};
 static const char *argv_rerere[] = {"rerere", "gc", NULL};
 
 static int gc_config(const char *var, const char *value)
@@ -245,12 +245,7 @@ int cmd_gc(int argc, const char **argv, const char *prefix)
 	if (run_command_v_opt(argv_repack, RUN_GIT_CMD))
 		return error(FAILED_RUN, argv_repack[0]);
 
-	if (!prune) {
-		argv_prune[1] = "--expire";
-		argv_prune[2] = prune_expire;
-		argv_prune[3] = NULL;
-	}
-
+	argv_prune[2] = prune_expire;
 	if (run_command_v_opt(argv_prune, RUN_GIT_CMD))
 		return error(FAILED_RUN, argv_prune[0]);
 

  reply	other threads:[~2008-03-12 20:57 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-11 20:58 [PATCH] gc: call "prune --expire 2.weeks.ago" Johannes Schindelin
2008-03-12  2:13 ` Junio C Hamano
2008-03-12  2:37   ` Nicolas Pitre
2008-03-12  6:49     ` Junio C Hamano
2008-03-12 10:57       ` Johannes Schindelin
2008-03-12 15:45         ` Nicolas Pitre
2008-03-12 15:53           ` Pieter de Bie
2008-03-12 16:05             ` Johannes Schindelin
2008-03-12 17:01               ` Jeff King
2008-03-12 22:50                 ` Pieter de Bie
2008-03-12 23:20                   ` Junio C Hamano
2008-03-12 23:30                     ` Johannes Schindelin
2008-03-12 23:41                       ` Junio C Hamano
2008-03-12 16:20         ` Geert Bosch
2008-03-12 15:07       ` Nicolas Pitre
2008-03-12 15:32         ` Marko Kreen
2008-03-12 17:35     ` [PATCH v2] gc: call "prune --expire 2.weeks.ago" by default Johannes Schindelin
2008-03-12 17:56       ` Brandon Casey
2008-03-12 18:35         ` Jakub Narebski
2008-03-12 19:07           ` Johannes Schindelin
2008-03-12 19:12             ` Junio C Hamano
2008-03-12 19:38               ` Johannes Schindelin
2008-03-12 19:53               ` [PATCH v3] " Johannes Schindelin
2008-03-12 19:55                 ` Johannes Schindelin
2008-03-12 19:55           ` [PATCH v2] " Brandon Casey
2008-03-12 19:59             ` Johannes Schindelin
2008-03-12 20:25               ` Brandon Casey
2008-03-12 20:35                 ` Junio C Hamano
2008-03-12 20:55                   ` [PATCH v4] " Johannes Schindelin
2008-03-12 20:56                     ` Johannes Schindelin [this message]
2008-03-12 21:20                     ` Junio C Hamano
2008-03-12 22:40                       ` Nicolas Pitre
2008-03-12 22:50                       ` Johannes Schindelin
2008-03-12 23:13                         ` Junio C Hamano
2008-03-12 23:28                           ` Johannes Schindelin
2008-03-12 23:39                             ` Junio C Hamano
2008-03-12 23:43                               ` Johannes Schindelin
2008-03-13  9:48                               ` Wincent Colaiuta
2008-03-13 10:17                                 ` Johannes Sixt
2008-03-13  9:21                     ` Wincent Colaiuta
2008-03-13 11:11                       ` Johannes Schindelin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LSU.1.00.0803122156080.1656@racer.site \
    --to=johannes.schindelin@gmx.de \
    --cc=casey@nrlssc.navy.mil \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=jnareb@gmail.com \
    --cc=nico@cam.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).