mirror of
https://github.com/git/git.git
synced 2024-12-12 03:14:11 +08:00
eab3296c7e
This patch teaches "prune" to remove shallow roots that are no longer reachable from any refs (e.g. when the relevant refs are removed). Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
87 lines
1.8 KiB
Plaintext
87 lines
1.8 KiB
Plaintext
git-prune(1)
|
|
============
|
|
|
|
NAME
|
|
----
|
|
git-prune - Prune all unreachable objects from the object database
|
|
|
|
|
|
SYNOPSIS
|
|
--------
|
|
[verse]
|
|
'git prune' [-n] [-v] [--expire <expire>] [--] [<head>...]
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
|
|
NOTE: In most cases, users should run 'git gc', which calls
|
|
'git prune'. See the section "NOTES", below.
|
|
|
|
This runs 'git fsck --unreachable' using all the refs
|
|
available in `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'.
|
|
It also removes entries from .git/shallow that are not reachable by
|
|
any ref.
|
|
|
|
Note that unreachable, packed objects will remain. If this is
|
|
not desired, see linkgit:git-repack[1].
|
|
|
|
OPTIONS
|
|
-------
|
|
|
|
-n::
|
|
--dry-run::
|
|
Do not remove anything; just report what it would
|
|
remove.
|
|
|
|
-v::
|
|
--verbose::
|
|
Report all removed objects.
|
|
|
|
\--::
|
|
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 'git gc', 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]
|
|
|
|
GIT
|
|
---
|
|
Part of the linkgit:git[1] suite
|