diff options
Diffstat (limited to 'git-gc.sh')
-rwxr-xr-x | git-gc.sh | 18 |
1 files changed, 16 insertions, 2 deletions
@@ -4,12 +4,26 @@ # # Cleanup unreachable files and optimize the repository. -USAGE='' +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 && -git-prune && +$no_prune git-prune && git-rerere gc || exit |