summaryrefslogtreecommitdiff
path: root/git-repack.sh
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <junkio@cox.net>2005-10-30 18:06:39 -0800
committerLibravatar Junio C Hamano <junkio@cox.net>2005-10-30 18:06:39 -0800
commite634aec752642dcf86c3fc82025e43381d6768c2 (patch)
treea589b6756894d18c841ac61499e5d2c9beda36fd /git-repack.sh
parentGIT 0.99.8g (diff)
parentWork around an RPM build problem. (diff)
downloadtgif-e634aec752642dcf86c3fc82025e43381d6768c2.tar.xz
GIT 0.99.9a
... to contain the RPM workaround. Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'git-repack.sh')
-rwxr-xr-xgit-repack.sh7
1 files changed, 6 insertions, 1 deletions
diff --git a/git-repack.sh b/git-repack.sh
index b395d0ef34..d341966efb 100755
--- a/git-repack.sh
+++ b/git-repack.sh
@@ -5,13 +5,14 @@
. git-sh-setup || die "Not a git archive"
-no_update_info= all_into_one= remove_redundant=
+no_update_info= all_into_one= remove_redundant= local=
while case "$#" in 0) break ;; esac
do
case "$1" in
-n) no_update_info=t ;;
-a) all_into_one=t ;;
-d) remove_redandant=t ;;
+ -l) local=t ;;
*) break ;;
esac
shift
@@ -37,6 +38,9 @@ case ",$all_into_one," in
find . -type f \( -name '*.pack' -o -name '*.idx' \) -print`
;;
esac
+if [ "$local" ]; then
+ pack_objects="$pack_objects --local"
+fi
name=$(git-rev-list --objects $rev_list $(git-rev-parse $rev_parse) |
git-pack-objects --non-empty $pack_objects .tmp-pack) ||
exit 1
@@ -58,6 +62,7 @@ then
# all-into-one is used.
if test "$all_into_one" != '' && test "$existing" != ''
then
+ sync
( cd "$PACKDIR" &&
for e in $existing
do