]> git.ipfire.org Git - thirdparty/git.git/blame - Documentation/git-prune.txt
t4034: abstract away SHA-1-specific constants
[thirdparty/git.git] / Documentation / git-prune.txt
CommitLineData
215a7ad1
JH
1git-prune(1)
2============
2cf565c5
DG
3
4NAME
5----
29cf5e12 6git-prune - Prune all unreachable objects from the object database
2cf565c5
DG
7
8
9SYNOPSIS
10--------
7791a1d9 11[verse]
1a1fc2d5 12'git prune' [-n] [-v] [--progress] [--expire <time>] [--] [<head>...]
2cf565c5
DG
13
14DESCRIPTION
15-----------
f85a4191 16
0b444cdb
TR
17NOTE: In most cases, users should run 'git gc', which calls
18'git prune'. See the section "NOTES", below.
8d308b35 19
0b444cdb 20This runs 'git fsck --unreachable' using all the refs
cc1b8d8b 21available in `refs/`, optionally with additional set of
58949bb1 22objects specified on the command line, and prunes all unpacked
2b86976b
JH
23objects unreachable from any of these head objects from the object database.
24In addition, it
f85a4191 25prunes the unpacked objects that are also found in packs by
0b444cdb 26running 'git prune-packed'.
eab3296c
NTND
27It also removes entries from .git/shallow that are not reachable by
28any ref.
f85a4191 29
58949bb1
CF
30Note that unreachable, packed objects will remain. If this is
31not desired, see linkgit:git-repack[1].
32
f85a4191
JH
33OPTIONS
34-------
35
36-n::
24aea033 37--dry-run::
f85a4191
JH
38 Do not remove anything; just report what it would
39 remove.
2cf565c5 40
b35ddf41 41-v::
24aea033 42--verbose::
b35ddf41
MG
43 Report all removed objects.
44
1a1fc2d5
RD
45--progress::
46 Show progress.
c82365dc 47
3240240f 48--expire <time>::
f01913e4
JS
49 Only expire loose objects older than <time>.
50
1a1fc2d5
RD
51\--::
52 Do not interpret any more arguments as options.
53
c82365dc 54<head>...::
2b86976b 55 In addition to objects
c82365dc 56 reachable from any of our references, keep objects
2b86976b 57 reachable from listed <head>s.
c82365dc 58
76a8788c
NTND
59EXAMPLES
60--------
c82365dc 61
a58088ab 62To prune objects not used by your repository or another that
c82365dc
JH
63borrows from your repository via its
64`.git/objects/info/alternates`:
65
66------------
8c3ca726 67$ git prune $(cd ../another && git rev-parse --all)
c82365dc 68------------
2cf565c5 69
76a8788c 70NOTES
8d308b35
JK
71-----
72
0b444cdb
TR
73In most cases, users will not need to call 'git prune' directly, but
74should instead call 'git gc', which handles pruning along with
8d308b35
JK
75many other housekeeping tasks.
76
77For a description of which objects are considered for pruning, see
0b444cdb 78'git fsck''s --unreachable option.
8d308b35 79
56ae8df5 80SEE ALSO
8d308b35
JK
81--------
82
83linkgit:git-fsck[1],
84linkgit:git-gc[1],
85linkgit:git-reflog[1]
86
2cf565c5
DG
87GIT
88---
9e1f0a85 89Part of the linkgit:git[1] suite