[PATCH] Use --objects=self-sufficient flag to rev-list.
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:01
Subsystem:
the rest · Maintainer:
Linus Torvalds
This adds --self-sufficient flag to git-repack-script, and uses it when preparing the dumb server material. Signed-off-by: Junio C Hamano <redacted> --- *** This makes things easier for the dumb puller because *** self-sufficient pack means less falling back on traditional *** http-pull. git-repack-script | 10 +++++++++- git-update-dumb-server-script | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) 6b0568181ede5540706bcdf69868102f554a2f8a
diff --git a/git-repack-script b/git-repack-script
--- a/git-repack-script
+++ b/git-repack-script@@ -1,8 +1,16 @@ #!/bin/sh : ${GIT_DIR=.git} : ${GIT_OBJECT_DIRECTORY="$GIT_DIR/objects"} + +case "$1" in +--self-sufficient) + objects=--objects=self-sufficient ;; +*) + objects=--objects ;; +esac + rm -f .tmp-pack-* -packname=$(git-rev-list --unpacked --objects $(git-rev-parse --all) | +packname=$(git-rev-list --unpacked $objects $(git-rev-parse --all) | git-pack-objects --non-empty --incremental .tmp-pack) || exit 1 if [ -z "$packname" ]; then
diff --git a/git-update-dumb-server-script b/git-update-dumb-server-script
--- a/git-update-dumb-server-script
+++ b/git-update-dumb-server-script@@ -26,7 +26,7 @@ plain_size=$( if test $max_plain_size -lt $plain_size >/dev/null then - git-repack-script && git-prune-packed + git-repack-script --self-sufficient && git-prune-packed fi && git-update-dumb-server && ------------