parse-remote: trivial fix to allow refs/{heads,tags}/ spelled easier.

Earlier we always prefixed refs/heads to the token given to "git fetch"
(and "git pull") as refspec.  This was a mistake.  Allow them to be
spelled like "master:refs/tags/paulus" to mean "I want to fetch the
master there and store it as my local "paulus" tag.

Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Junio C Hamano 2005-08-30 01:08:24 -07:00
parent 51017101c7
commit 61f01a5b77

View file

@ -81,10 +81,14 @@ canon_refs_list_for_fetch () {
local=$(expr "$ref" : '[^:]*:\(.*\)')
case "$remote" in
'') remote=HEAD ;;
refs/heads/* | refs/tags/*) ;;
heads/* | tags/* ) remote="refs/$remote" ;;
*) remote="refs/heads/$remote" ;;
esac
case "$local" in
'') local= ;;
refs/heads/* | refs/tags/*) ;;
heads/* | tags/* ) local="refs/$local" ;;
*) local="refs/heads/$local" ;;
esac
echo "${force}${remote}:${local}"