From 5dee29ac0fc95999a42c5cbac767724a9ff73cfa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Thu, 25 Jan 2007 05:45:39 +0100 Subject: [PATCH] make --upload-pack option to git-fetch configurable MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This introduces the config item remote..uploadpack to override the default value (which is "git-upload-pack"). Signed-off-by: Uwe Kleine-König Signed-off-by: Junio C Hamano --- Documentation/config.txt | 6 +++++- git-fetch.sh | 6 ++++++ git-parse-remote.sh | 13 +++++++++++++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/Documentation/config.txt b/Documentation/config.txt index 8086d75368..3f2fa09a87 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -429,9 +429,13 @@ remote..push:: gitlink:git-push[1]. remote..receivepack:: - The default program to execute on the remote side when pulling. See + The default program to execute on the remote side when pushing. See option \--exec of gitlink:git-push[1]. +remote..uploadpack:: + The default program to execute on the remote side when fetching. See + option \--exec of gitlink:git-fetch-pack[1]. + repack.usedeltabaseoffset:: Allow gitlink:git-repack[1] to create packs that uses delta-base offset. Defaults to false. diff --git a/git-fetch.sh b/git-fetch.sh index 07a1d05ac7..61c8cf4773 100755 --- a/git-fetch.sh +++ b/git-fetch.sh @@ -85,6 +85,12 @@ case "$#" in set x $origin ; shift ;; esac +if test -z "$exec" +then + # No command line override and we have configuration for the remote. + exec="--upload-pack=$(get_uploadpack $1)" +fi + remote_nick="$1" remote=$(get_remote_url "$@") refs= diff --git a/git-parse-remote.sh b/git-parse-remote.sh index 4fc602082b..1122c8389d 100755 --- a/git-parse-remote.sh +++ b/git-parse-remote.sh @@ -279,3 +279,16 @@ resolve_alternates () { esac done } + +get_uploadpack () { + data_source=$(get_data_source "$1") + case "$data_source" in + config) + uplp=$(git-repo-config --get "remote.$1.uploadpack") + echo ${uplp:-git-upload-pack} + ;; + *) + echo "git-upload-pack" + ;; + esac +}