git-prune - Prune all unreachable objects from the object database
git prune [-n] [-v] [--expire <expire>] [--] [<head>...]
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
Note that unreachable, packed objects will remain. If this is not
desired, see git-repack(1).
Do not remove anything; just report what it would remove.
Report all removed objects.
Do not interpret any more arguments as options.
Only expire loose objects older than <time>.
In addition to objects reachable from any of our references, keep
objects reachable from listed <head>s.
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))
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
For a description of which objects are considered for pruning, see git
fsck's --unreachable option.
git-fsck(1), git-gc(1), git-reflog(1)
Part of the git(1) suite