pull --rebase: exit early when the working directory is dirty
[gitweb.git] / Documentation / git-prune.txt
index f368427547152a2d7123b8a414047af7cdb16ee9..3178bc44ca4640e77a799128c9de631168e40c8a 100644 (file)
@@ -1,26 +1,32 @@
 git-prune(1)
 ============
-v0.99.5, Aug 2005
 
 NAME
 ----
-git-prune - Prunes all unreachable objects from the object database
+git-prune - Prune all unreachable objects from the object database
 
 
 SYNOPSIS
 --------
-'git-prune' [-n]
+'git-prune' [-n] [--expire <expire>] [--] [<head>...]
 
 DESCRIPTION
 -----------
 
-This runs `git-fsck-objects --unreachable` using the heads
-specified on the command line (or `$GIT_DIR/refs/heads/\*` and
-`$GIT_DIR/refs/tags/\*` if none is specified), and prunes all
-unreachable objects from the object database.  In addition, it
+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 unpacked
+objects unreachable from any of these head objects from the object database.
+In addition, it
 prunes the unpacked objects that are also found in packs by
 running `git prune-packed`.
 
+Note that unreachable, packed objects will remain.  If this is
+not desired, see linkgit:git-repack[1].
+
 OPTIONS
 -------
 
@@ -28,6 +34,44 @@ OPTIONS
        Do not remove anything; just report what it would
        remove.
 
+\--::
+       Do not interpret any more arguments as options.
+
+\--expire <time>::
+       Only expire loose objects older than <time>.
+
+<head>...::
+       In addition to objects
+       reachable from any of our references, keep objects
+       reachable from listed <head>s.
+
+EXAMPLE
+-------
+
+To prune objects not used by your repository nor another that
+borrows from your repository via its
+`.git/objects/info/alternates`:
+
+------------
+$ 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
 ------
@@ -39,5 +83,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
 
 GIT
 ---
-Part of the link:git.html[git] suite
-
+Part of the linkgit:git[7] suite