#!/bin/sh | |
# | |
# Copyright (c) 2006, Shawn O. Pearce | |
# | |
# Cleanup unreachable files and optimize the repository. | |
USAGE='git-gc [--prune]' | |
SUBDIRECTORY_OK=Yes | |
. git-sh-setup | |
no_prune=: | |
while case $# in 0) break ;; esac | |
do | |
case "$1" in | |
--prune) | |
no_prune= | |
;; | |
--) | |
usage | |
;; | |
esac | |
shift | |
done | |
git-pack-refs --prune && | |
git-reflog expire --all && | |
git-repack -a -d -l && | |
$no_prune git-prune && | |
git-rerere gc || exit |