From e3ff4b244726f89620201e3295f097cf00b6b502 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Sun, 21 Jan 2007 23:28:28 -0800 Subject: git-gc: do not run git-prune by default. git-prune is not safe when run uncontrolled in parallel while other git operations are creating new objects. To avoid mistakes, do not run git-prune by default from git-gc. Signed-off-by: Junio C Hamano --- git-gc.sh | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'git-gc.sh') diff --git a/git-gc.sh b/git-gc.sh index 6de55f729..3e8c87c81 100755 --- a/git-gc.sh +++ b/git-gc.sh @@ -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 -- cgit v1.2.1