From 490e23d22afad5734daa447f1a991eeff3a669bb Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Sat, 17 Sep 2005 23:35:49 -0700 Subject: [PATCH] Archive-destroying "git repack -a -d" bug. Using "git repack -a -d" can destroy your git archive if you use it twice in succession, because the new pack can be called the same as the old pack. Found by Linus. Signed-off-by: Junio C Hamano --- git-repack.sh | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/git-repack.sh b/git-repack.sh index 064c85cbb..b395d0ef3 100755 --- a/git-repack.sh +++ b/git-repack.sh @@ -58,7 +58,15 @@ then # all-into-one is used. if test "$all_into_one" != '' && test "$existing" != '' then - ( cd "$PACKDIR" && rm -f $existing ) + ( cd "$PACKDIR" && + for e in $existing + do + case "$e" in + ./pack-$name.pack | ./pack-$name.idx) ;; + *) rm -f $e ;; + esac + done + ) fi fi -- 2.30.2