summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 08cdfb1)
raw | patch | inline | side by side (parent: 08cdfb1)
author | Junio C Hamano <gitster@pobox.com> | |
Mon, 17 Sep 2007 06:24:07 +0000 (23:24 -0700) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Tue, 18 Sep 2007 06:12:11 +0000 (23:12 -0700) |
This is a safer variant of "repack -a -d" that does not drop
unreachable objects that are in packs.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
unreachable objects that are in packs.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-repack.sh | patch | blob | history |
diff --git a/git-repack.sh b/git-repack.sh
index 156c5e8f4aa2f6c04e33af323ef43356fd336adb..633b902e26a7e527c7a80ccf6aed2da5e71fa802 100755 (executable)
--- a/git-repack.sh
+++ b/git-repack.sh
# Copyright (c) 2005 Linus Torvalds
#
-USAGE='[-a] [-d] [-f] [-l] [-n] [-q] [--max-pack-size=N] [--window=N] [--window-memory=N] [--depth=N]'
+USAGE='[-a|-A] [-d] [-f] [-l] [-n] [-q] [--max-pack-size=N] [--window=N] [--window-memory=N] [--depth=N]'
SUBDIRECTORY_OK='Yes'
. git-sh-setup
-no_update_info= all_into_one= remove_redundant=
+no_update_info= all_into_one= remove_redundant= keep_unreachable=
local= quiet= no_reuse= extra=
while case "$#" in 0) break ;; esac
do
case "$1" in
-n) no_update_info=t ;;
-a) all_into_one=t ;;
+ -A) all_into_one=t
+ keep_unreachable=--keep-unreachable ;;
-d) remove_redundant=t ;;
-q) quiet=-q ;;
-f) no_reuse=--no-reuse-object ;;
fi
done
fi
- [ -z "$args" ] && args='--unpacked --incremental'
+ if test -z "$args"
+ then
+ args='--unpacked --incremental'
+ elif test -n "$keep_unreachable"
+ then
+ args="$args $keep_unreachable"
+ fi
;;
esac