Re: lost again on syntax change - local repository?
- From
Petr Baudis <pasky@suse.cz>
- Date
- Nov 28, 2005, 19:15 UTC
- Message-ID
- <20051128191546.GT22159@pasky.or.cz>
- In-Reply-To
- <868xv86dam.fsf@blue.stonehenge.com>
Dear diary, on Mon, Nov 28, 2005 at 03:46:09PM CET, I got a letter where "Randal L. Schwartz" <merlyn@stonehenge.com> said that...
Show 13 quoted lines
> However, I get this: > > localhost:..git/Play/local.git % echo "/Users/merlyn/Projects/git/Play/remote.git" | grep -q ":" > localhost:..git/Play/local.git % echo $status > 1 > > So, perhaps the "bash" on this system is broken for that elif chain? > > localhost:..git/Play/local.git % bash --version > GNU bash, version 2.05b.0(1)-release (powerpc-apple-darwin8.0) > Copyright (C) 2002 Free Software Foundation, Inc. > > Gah. Yet Another Hidden Dependency.
Perplexing. Can't reproduce it with bash-2.05b either.
Could you try the following, please?
diff --git a/cg-push b/cg-push index 1d59422..323ef26 100755 --- a/cg-push +++ b/cg-push @@ -56,13 +56,13 @@ if echo "$uri" | grep -q '#'; then uri=$(echo $uri | cut -d '#' -f 1) fi -if echo "$uri" | grep -q "^http://"; then +if [ "${uri#http://}" != "$uri" ]; then die "pushing over HTTP not supported yet" -elif echo "$uri" | grep -q "^git+ssh://"; then +elif [ "${uri#git+ssh://}" != "$uri" ]; then send_pack_update "$name" "$(echo "$uri" | sed 's#^git+ssh://\([^/]*\)\(/.*\)$#\1:\2#')" $_git_head$sprembranch "${tags[@]}" -elif echo "$uri" | grep -q "^rsync://"; then +elif [ "${uri#rsync://}" != "$uri" ]; then die "pushing over rsync not supported" -elif echo "$uri" | grep -q ":"; then +elif [ "${uri#*:}" != "$uri" ]; then echo "WARNING: I guessed the host:path syntax was used and fell back to the git+ssh protocol." echo "WARNING: The host:path syntax is evil because it is implicit. Please just use a URI." send_pack_update "$name" "$uri" $_git_head$sprembranch "${tags[@]}"
-- Petr "Pasky" Baudis Stuff: http://pasky.or.cz/ VI has two modes: the one in which it beeps and the one in which it doesn't.