git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] Documentation: point git-prune users to git-gc

From
Jeff King <peff@peff.net>
Date
Apr 29, 2008, 20:45 UTC
Message-ID
<20080429204514.GA21029@sigill.intra.peff.net>
In-Reply-To
<32541b130804240959y3b05d4b5u67ac7a7c14bf187e@mail.gmail.com>
On Thu, Apr 24, 2008 at 12:59:34PM -0400, Avery Pennarun wrote:
> I gather there's a movement in recent git versions (sorry, I only
> tuned in recently) to encourage people to use git-gc instead of
> git-prune in almost all cases.  The reasons I ever looked at git-prune

Yes, I don't think there is any reason for most people to use git-prune at all, unless they are trying specifically to prune and don't want the other gc effects to happen.

Junio, please correct me if I'm wrong there.
> Adding git-gc *and* git-reflog as See Also entries in git-prune would
> make sense to me.
Agreed. Below is a patch that will hopefully clarify the situation.
-- >8 --
Documentation: point git-prune users to git-gc

Most users should be using git-gc instead of directly calling prune. For those who really do want more information on pruning, let's point them at git-fsck, which goes into slightly more detail on reachability.

And since we're pointing users there, let's make sure reflogs are mentioned in git-fsck(1).

Signed-off-by: Jeff King <peff@peff.net>
---
 Documentation/git-fsck.txt  |    3 ++-
 Documentation/git-prune.txt |   20 ++++++++++++++++++++
 2 files changed, 22 insertions(+), 1 deletions(-)
diff --git a/Documentation/git-fsck.txt b/Documentation/git-fsck.txt
index f16cb98..4cc26fb 100644
--- a/Documentation/git-fsck.txt
+++ b/Documentation/git-fsck.txt
@@ -22,7 +22,8 @@ OPTIONS
 	An object to treat as the head of an unreachability trace.
 +
 If no objects are given, git-fsck defaults to using the
-index file and all SHA1 references in .git/refs/* as heads.
+index file, all SHA1 references in .git/refs/*, and all reflogs (unless
+--no-reflogs is given) as heads.
 
 --unreachable::
 	Print out objects that exist but that aren't readable from any
diff --git a/Documentation/git-prune.txt b/Documentation/git-prune.txt
index f151cff..f92bb8c 100644
--- a/Documentation/git-prune.txt
+++ b/Documentation/git-prune.txt
@@ -13,6 +13,9 @@ SYNOPSIS
 DESCRIPTION
 -----------
 
+NOTE: In most cases, users should run linkgit:git-gc[1], which calls
+git-prune. See the section "NOTES", below.
+
 This runs `git-fsck --unreachable` using all the refs
 available in `$GIT_DIR/refs`, optionally with additional set of
 objects specified on the command line, and prunes all
@@ -50,6 +53,23 @@ borrows from your repository via its
 $ git prune $(cd ../another && $(git-rev-parse --all))
 ------------
 
+Notes
+-----
+
+In most cases, users will not need to call git-prune directly, but
+should instead call linkgit:git-gc[1], which handles pruning along with
+many other housekeeping tasks.
+
+For a description of which objects are considered for pruning, see
+git-fsck's --unreachable option.
+
+See Also
+--------
+
+linkgit:git-fsck[1],
+linkgit:git-gc[1],
+linkgit:git-reflog[1]
+
 Author
 ------
 Written by Linus Torvalds <torvalds@osdl.org>
-- 
1.5.5.1.172.g4dce
Previous: Avery PennarunNext: Junio C Hamano
Message 9 of 12 in “git-gc doesn't clean up leftover objects after git-filter-branch unless you clone first”
  1. Avery PennarunApr 23, 2008
  2. Junio C HamanoApr 23, 2008
  3. Avery PennarunApr 23, 2008
  4. Jeff KingApr 23, 2008
  5. Jeff KingApr 24, 2008
  6. Avery PennarunApr 24, 2008
  7. Jeff KingApr 24, 2008
  8. Avery PennarunApr 24, 2008
  9. Documentation: point git-prune users to git-gcJeff King, Apr 29, 2008
  10. Junio C HamanoApr 29, 2008
  11. Jeff KingApr 29, 2008
  12. Junio C HamanoApr 30, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.