From: Felipe Contreras <felipe.contreras@gmail.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: Duy Nguyen <pclouds@gmail.com>,
Git Mailing List <git@vger.kernel.org>,
Ramkumar Ramachandra <artagnon@gmail.com>,
Michael J Gruber <git@drmicha.warpmail.net>,
Jon Seymour <jon.seymour@gmail.com>
Subject: Re: [PATCH] Add new @ shortcut for HEAD
Date: Tue, 30 Apr 2013 17:38:02 -0500 [thread overview]
Message-ID: <CAMP44s3=frHWUh8rQ5kTooUJqwAtkEG37MaeY3Ho6G7-kwZQ_w@mail.gmail.com> (raw)
In-Reply-To: <7vsj27ac2a.fsf@alter.siamese.dyndns.org>
On Tue, Apr 30, 2013 at 5:27 PM, Junio C Hamano <gitster@pobox.com> wrote:
> Felipe Contreras <felipe.contreras@gmail.com> writes:
>
>>> That means "git checout @" should work the same way as "git checkout
>>> HEAD", "git log @~4" would work the same way as "git log HEAD~4",
>>> "git update-ref @ $(git rev-parse master)" should update the HEAD
>>> without creating $GIT_DIR/@, etc.
>>>
>>> You can't go any simpler than that rule, and there is no room for
>>> confusion if that rule is properly implemented.
>>
>> I disagree. I can do 'git log @{-1}-4', but I cannot do 'git
>> update-ref @{-1}'. Why? Because the '@' notation is for revision
>> parsing, and 'git update-ref' doesn't do revision parsing.
>>
>> I'd say, everywhere where you could do @{-1}, you should be able to do @.
>
> Yes, @{-1} is about a ref, the branch that you were on previously.
> That is why you can do
>
> git checkout fc/at-head
> git checkout master...
> git am -s <./+fc-updated-at-head-series.mbox
> git co -B @{-1}
>
> We wouldn't be able to do the last step, if @{-1} evaluated it down
> to the object name, losing the refname.
>
> If "update-ref @{-1}" does not grok @{-1}, probably there needs a
> call to interpret_nth_prior_checkout() in the codepath.
Maybe, but the closest thing would be dwim_ref(), which would also use
rev parsing rules, so there might ambiguous refs.
Since 'update-ref master' updates the 'master' ref, and not
'refs/heads/master' (IOW; no parsing at all), I think it makes sense
that @{-1} is not parsed, and neither is @.
If the user really really wants rev parsing, she can use 'git rev-parse'.
Cheers.
--
Felipe Contreras
next prev parent reply other threads:[~2013-04-30 22:38 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-29 19:35 [PATCH] Add new @ shortcut for HEAD Felipe Contreras
2013-04-29 19:43 ` Ramkumar Ramachandra
2013-04-29 20:01 ` Junio C Hamano
2013-04-29 20:14 ` Felipe Contreras
2013-04-29 20:24 ` Junio C Hamano
2013-04-29 20:38 ` Felipe Contreras
2013-04-29 21:01 ` Junio C Hamano
2013-04-29 20:02 ` Junio C Hamano
2013-04-29 20:23 ` Felipe Contreras
2013-04-29 21:36 ` Felipe Contreras
2013-04-29 22:50 ` Junio C Hamano
2013-04-30 0:53 ` Jonathan Nieder
2013-04-30 17:54 ` Junio C Hamano
2013-04-30 18:17 ` Felipe Contreras
2013-04-29 22:38 ` Junio C Hamano
2013-04-29 22:49 ` Felipe Contreras
2013-04-29 23:06 ` Junio C Hamano
2013-04-29 23:10 ` Felipe Contreras
2013-04-30 5:54 ` Duy Nguyen
2013-04-30 6:10 ` Felipe Contreras
2013-04-30 6:17 ` Duy Nguyen
2013-04-30 6:20 ` Felipe Contreras
2013-04-30 6:30 ` Duy Nguyen
2013-04-30 7:55 ` Felipe Contreras
2013-04-30 7:09 ` Michael Haggerty
2013-04-30 7:35 ` Ramkumar Ramachandra
2013-04-30 10:16 ` Duy Nguyen
2013-04-30 11:10 ` Ramkumar Ramachandra
2013-04-30 18:54 ` Ramkumar Ramachandra
2013-04-30 10:12 ` Duy Nguyen
2013-04-30 17:22 ` Junio C Hamano
2013-04-30 17:37 ` Ramkumar Ramachandra
2013-04-30 17:40 ` Ramkumar Ramachandra
2013-04-30 17:56 ` Junio C Hamano
2013-04-30 18:04 ` Ramkumar Ramachandra
2013-04-30 18:20 ` Felipe Contreras
2013-04-30 18:45 ` Ramkumar Ramachandra
2013-04-30 22:08 ` Felipe Contreras
2013-04-30 17:47 ` Felipe Contreras
2013-04-30 17:56 ` Jeff King
2013-04-30 18:18 ` Felipe Contreras
2013-04-30 19:42 ` Junio C Hamano
2013-04-30 19:53 ` Ramkumar Ramachandra
2013-04-30 20:05 ` Junio C Hamano
2013-04-30 20:37 ` Ramkumar Ramachandra
2013-04-30 19:59 ` Junio C Hamano
2013-04-30 22:17 ` Felipe Contreras
2013-04-30 22:27 ` Junio C Hamano
2013-04-30 22:38 ` Felipe Contreras [this message]
2013-04-30 22:42 ` Junio C Hamano
2013-04-30 22:53 ` Felipe Contreras
2013-04-30 23:00 ` Felipe Contreras
2013-04-30 23:19 ` Felipe Contreras
2013-04-30 23:24 ` Junio C Hamano
2013-04-30 6:07 ` Duy Nguyen
2013-04-30 6:11 ` Felipe Contreras
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='CAMP44s3=frHWUh8rQ5kTooUJqwAtkEG37MaeY3Ho6G7-kwZQ_w@mail.gmail.com' \
--to=felipe.contreras@gmail.com \
--cc=artagnon@gmail.com \
--cc=git@drmicha.warpmail.net \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=jon.seymour@gmail.com \
--cc=pclouds@gmail.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).