Skip to content

Commit

Permalink
Do not support "partial URL shorthand" anymore.
Browse files Browse the repository at this point in the history
We used to support specifying the top part of remote URL in
remotes and use that as a short-hand for the URL.

	$ cat .git/remotes/jgarzik
	URL: git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/
	$ git pull jgarzik/misc-2.6

This is confusing when somebody attempts to do this:

	$ git pull origin/foo

which is not syntactically correct (unless you have origin/foo.git
repository) and should fail, but it resulted in a mysterious
access to the 'foo' subdirectory of the origin repository.

Which was what it was designed to do, but because this is an
oddball "feature" I suspect nobody uses, let's remove it.

Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Junio C Hamano committed Dec 22, 2006
1 parent fb8696d commit ea560e6
Showing 1 changed file with 7 additions and 27 deletions.
34 changes: 7 additions & 27 deletions git-parse-remote.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,7 @@ GIT_DIR=$(git-rev-parse --git-dir 2>/dev/null) || :;
get_data_source () {
case "$1" in
*/*)
# Not so fast. This could be the partial URL shorthand...
token=$(expr "z$1" : 'z\([^/]*\)/')
remainder=$(expr "z$1" : 'z[^/]*/\(.*\)')
if test "$(git-repo-config --get "remote.$token.url")"
then
echo config-partial
elif test -f "$GIT_DIR/branches/$token"
then
echo branches-partial
else
echo ''
fi
echo ''
;;
*)
if test "$(git-repo-config --get "remote.$1.url")"
Expand All @@ -40,12 +29,7 @@ get_remote_url () {
data_source=$(get_data_source "$1")
case "$data_source" in
'')
echo "$1" ;;
config-partial)
token=$(expr "z$1" : 'z\([^/]*\)/')
remainder=$(expr "z$1" : 'z[^/]*/\(.*\)')
url=$(git-repo-config --get "remote.$token.url")
echo "$url/$remainder"
echo "$1"
;;
config)
git-repo-config --get "remote.$1.url"
Expand All @@ -54,14 +38,10 @@ get_remote_url () {
sed -ne '/^URL: */{
s///p
q
}' "$GIT_DIR/remotes/$1" ;;
}' "$GIT_DIR/remotes/$1"
;;
branches)
sed -e 's/#.*//' "$GIT_DIR/branches/$1" ;;
branches-partial)
token=$(expr "z$1" : 'z\([^/]*\)/')
remainder=$(expr "z$1" : 'z[^/]*/\(.*\)')
url=$(sed -e 's/#.*//' "$GIT_DIR/branches/$token")
echo "$url/$remainder"
sed -e 's/#.*//' "$GIT_DIR/branches/$1"
;;
*)
die "internal error: get-remote-url $1" ;;
Expand All @@ -77,7 +57,7 @@ get_default_remote () {
get_remote_default_refs_for_push () {
data_source=$(get_data_source "$1")
case "$data_source" in
'' | config-partial | branches | branches-partial)
'' | branches)
;; # no default push mapping, just send matching refs.
config)
git-repo-config --get-all "remote.$1.push" ;;
Expand Down Expand Up @@ -196,7 +176,7 @@ canon_refs_list_for_fetch () {
get_remote_default_refs_for_fetch () {
data_source=$(get_data_source "$1")
case "$data_source" in
'' | config-partial | branches-partial)
'')
echo "HEAD:" ;;
config)
canon_refs_list_for_fetch -d "$1" \
Expand Down

0 comments on commit ea560e6

Please sign in to comment.