git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Santi Béjar" <santi@agolina.net>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCHv3 1/4] parse-remote: function to get the tracking branch  to be merge
Date: Tue, 9 Jun 2009 14:16:03 +0200	[thread overview]
Message-ID: <adf1fd3d0906090516l6b1d5ec1rdc78ffffa116b765@mail.gmail.com> (raw)
In-Reply-To: <adf1fd3d0906090150k575c538ds28cd8c1a96909e9e@mail.gmail.com>

2009/6/9 Santi Béjar <santi@agolina.net>:
> 2009/6/9 Junio C Hamano <gitster@pobox.com>:
>> Santi Béjar <santi@agolina.net> writes:
>>
>>>> git pull --rebase tags v1.6.0
>>>
>>> In fact: git pull --rebase remote tags v1.6.0
>>>
>>> But this still works because oldremoteref defaults to defaults_merge.
>>> So the only behavior change is when a remote branch is
>>> rebased/retagged, and you have worst problems then. I think noone used
>>> the rebased functionality in this way, so I don't think it is worth to
>>> support it. But if someone think it is important I'll do it.
>>
>> I personally do not think supporting such a form of input is absolutely
>> necessary.  Even though technically it might be a regression, if it is so
>> rare a form, we can simply say "this strange form used to work, but now it
>> does not; you can use this form instead to do the same thing", and move
>> on.
>
> OK.
>

At the end it was a little patch to get this corner case working. Here
it is the patch to squash (I'll send later a proper patch mail, with a
test).

And this additional sentence in the commit log:

No behavior changes. The new function behaves like the old code used in
"git pull --rebase".

diff --git i/git-parse-remote.sh w/git-parse-remote.sh
index 8b3ba72..4ac277f 100755
--- i/git-parse-remote.sh
+++ w/git-parse-remote.sh
@@ -238,8 +238,12 @@ get_remote_merge_branch () {
 	    shift
 	    # FIXME: It should return the tracking branch
 	    #        Currently only works with the default mapping
-	    for ref
-	    do
+	    case "$1" in
+	    tag)
+		[ -n "$2" ] && echo "refs/tags/${ref}"
+		;;
+	    *)
+		ref=$1
 		case "$ref" in
 		+*)
 			ref=$(expr "z$ref" : 'z+\(.*\)')
@@ -251,12 +255,11 @@ get_remote_merge_branch () {
 		'' | HEAD ) remote=HEAD ;;
 		heads/*) remote=${remote#heads/} ;;
 		refs/heads/*) remote=${remote#refs/heads/} ;;
-		refs/* | tags/* | remotes/* ) break
+		refs/* | tags/* | remotes/* ) remote=
 		esac

-		echo "refs/remotes/$repo/$remote"
-		break
-	    done
+		[ -n "$remote" ] && echo "refs/remotes/$repo/$remote"
+	    esac
 	    ;;
 	esac
 }

(Sorry, if it gets corrupted)

Santi

  reply	other threads:[~2009-06-09 12:16 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-08  9:00 [PATCHv3 1/4] parse-remote: function to get the tracking branch to be merge Santi Béjar
2009-06-08 23:30 ` Junio C Hamano
2009-06-09  7:29   ` Santi Béjar
2009-06-09  8:07     ` Santi Béjar
2009-06-09  8:28       ` Junio C Hamano
2009-06-09  8:50         ` Santi Béjar
2009-06-09 12:16           ` Santi Béjar [this message]
2009-06-11 21:30             ` Santi Béjar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=adf1fd3d0906090516l6b1d5ec1rdc78ffffa116b765@mail.gmail.com \
    --to=santi@agolina.net \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).