Detect console streams more reliably on Windows
[git/mingw/4msysgit.git] / Documentation / git-prune.txt
blob4d673a56864ca88de0e98f54a6de469e99ea0f44
1 git-prune(1)
2 ============
4 NAME
5 ----
6 git-prune - Prune all unreachable objects from the object database
9 SYNOPSIS
10 --------
11 'git prune' [-n] [-v] [--expire <expire>] [--] [<head>...]
13 DESCRIPTION
14 -----------
16 NOTE: In most cases, users should run 'git gc', which calls
17 'git prune'. See the section "NOTES", below.
19 This runs 'git fsck --unreachable' using all the refs
20 available in `refs/`, optionally with additional set of
21 objects specified on the command line, and prunes all unpacked
22 objects unreachable from any of these head objects from the object database.
23 In addition, it
24 prunes the unpacked objects that are also found in packs by
25 running 'git prune-packed'.
27 Note that unreachable, packed objects will remain.  If this is
28 not desired, see linkgit:git-repack[1].
30 OPTIONS
31 -------
33 -n::
34 --dry-run::
35         Do not remove anything; just report what it would
36         remove.
38 -v::
39 --verbose::
40         Report all removed objects.
42 \--::
43         Do not interpret any more arguments as options.
45 --expire <time>::
46         Only expire loose objects older than <time>.
48 <head>...::
49         In addition to objects
50         reachable from any of our references, keep objects
51         reachable from listed <head>s.
53 EXAMPLE
54 -------
56 To prune objects not used by your repository nor another that
57 borrows from your repository via its
58 `.git/objects/info/alternates`:
60 ------------
61 $ git prune $(cd ../another && $(git rev-parse --all))
62 ------------
64 Notes
65 -----
67 In most cases, users will not need to call 'git prune' directly, but
68 should instead call 'git gc', which handles pruning along with
69 many other housekeeping tasks.
71 For a description of which objects are considered for pruning, see
72 'git fsck''s --unreachable option.
74 SEE ALSO
75 --------
77 linkgit:git-fsck[1],
78 linkgit:git-gc[1],
79 linkgit:git-reflog[1]
81 Author
82 ------
83 Written by Linus Torvalds <torvalds@osdl.org>
85 Documentation
86 --------------
87 Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel.org>.
89 GIT
90 ---
91 Part of the linkgit:git[1] suite