Re: [PATCH] git-fetch.sh printed protocol fix
From: Junio C Hamano <hidden>
Date: 2016-08-11 19:45:55
Subsystem:
the rest · Maintainer:
Linus Torvalds
"Tuncer Ayaz" [off-list ref] writes:
As a feature I wished for (ftp:// support in git-fetch) was added in 1.4.3 I tested that feature and found a minor logging issue. The mini-patch below fixes that. AFAIK the pattern expansion feature I've used should be available in any current /bin/sh. If not we will have to find another way to print the protocol part of the used fetch URL.
Yes, we also have supported https:// that way for a long time.
quoted hunk ↗ jump to hunk
--- git-core-1.4.3.2/git-fetch.sh 2006-10-24 07:29:47.000000000 +0200 +++ git-core-1.4.3.2.tma/git-fetch.sh 2006-10-25 11:44:34.000000000 +0200@@ -310,7 +310,7 @@done expr "z$head" : "z$_x40\$" >/dev/null || die "Failed to fetch $remote_name from $remote" - echo >&2 Fetching "$remote_name from $remote" using http + echo >&2 Fetching "$remote_name from $remote" using ${remote%%:*} git-http-fetch -v -a "$head" "$remote/" || exit ;; rsync://*)
As you noticed, we stayed away from using ${parameter#word} or
${parameter%word} substitutions so far, to be as compatible with
vanilla shells as possible (I know even dash which is pretty
much the most minimal supports it -- the syntax is in POSIX). I
am a bit reluctant to take this implementation right now. We
tend to use colon-form of "expr" for things like this.
It might make sense to do a survey of userbase at some point to
see if everybody's shell that works with the current set of
scripts understands the substring substitution, and after
finding it out switch many invocations of expr to substring
substitutions.
For now I'd take the patch but change it to match others to use
expr.
Next time around, please sign your patch.
-- >8 --
From: Tuncer Ayaz <redacted>
Date: Wed, 25 Oct 2006 12:03:06 +0200
Subject: [PATCH] git-fetch.sh printed protocol fix
We have supported https:// protocol for some time and in 1.4.3
added ftp:// protocol. The transfer were still reported to be
over http.
[jc: Tuncer used substring parameter substitution ${remote%%:*}
but I am deferring it to a later day. We should replace
colon-expr with substring substitution after everybody's shell
can grok it someday, but we are not in a hurry. ]
Signed-off-by: Junio C Hamano <redacted>
---
git-fetch.sh | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/git-fetch.sh b/git-fetch.sh
index 79222fb..9eedf8b 100755
--- a/git-fetch.sh
+++ b/git-fetch.sh@@ -287,6 +287,7 @@ fetch_main () { # There are transports that can fetch only one head at a time... case "$remote" in http://* | https://* | ftp://*) + proto=`expr "$remote" : '\([^:]*\):'` if [ -n "$GIT_SSL_NO_VERIFY" ]; then curl_extra_args="-k" fi
@@ -310,7 +311,7 @@ fetch_main () { done expr "z$head" : "z$_x40\$" >/dev/null || die "Failed to fetch $remote_name from $remote" - echo >&2 Fetching "$remote_name from $remote" using http + echo >&2 "Fetching $remote_name from $remote using $proto" git-http-fetch -v -a "$head" "$remote/" || exit ;; rsync://*)
--
1.4.3.2.gc1a4