git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ramkumar Ramachandra <artagnon@gmail.com>
To: Git List <git@vger.kernel.org>
Cc: Junio C Hamano <gitster@pobox.com>
Subject: Itches with the current rev spec
Date: Thu, 25 Apr 2013 10:37:16 +0530	[thread overview]
Message-ID: <CALkWK0n97VLtiR96VEy86645NVoDL2rS-g7LBuLb=JpncdH6VA@mail.gmail.com> (raw)

Hi,

So, I have three serious itches that would be nice to address:

1. git reset --hard HEAD~1/ git show HEAD~1 is a very common idiom
that's unnecessarily cumbersome to type out.  We can make the <rev>
part of <rev>~<n> optional without being ambiguous: you might argue
that ~<n> normally refers to a /home/<n>, but who uses numbers in
place of usernames?  Even if they do, how can that path possibly be
inside our repository?

2. git rebase -i master fails unless I've rebased my branch on top of
master.  I always wished I could do the equivalent of 'git rebase -i
master..', but I can't.  Can we give the A..B syntax a new meaning in
the context of rebase, namely $(git merge-base A B)?  No, this is not
similar to the current diff A..B at all: first, we don't operate on
two endpoints (so 'git rebase -i A B' is nonsensical, and only the
'git rebase -i A ^B'/ 'git rebase -i ^A B' should be handled as
special cases); second, we're trying to be consistent with the
end-result meaning of A..B in ranged-commands like log (as opposed to
diff, which is being inconsistent).

3. Even though I lashed out strongly against 'git diff A..B' because
of inconsistency, I can't say that it's not useful (omit specifying
HEAD on one side).  If we were to start over today, I would argue that
'git diff A ^B' and 'git diff B ^A' be handled as special cases to
mean 'git diff B $(git merge-base A B)' and 'git diff $(git merge-base
A B) B' respectively.  The normal 'git diff A B' should have nothing
to do with this.  Plus, 'git diff A...B' is really an eyesore.  So I
ask again: what can be done to improve the situation?

Thanks.

             reply	other threads:[~2013-04-25  5:08 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-25  5:07 Ramkumar Ramachandra [this message]
2013-04-25  5:54 ` Itches with the current rev spec Ramkumar Ramachandra
2013-04-25  8:22 ` Matthieu Moy
2013-04-25  8:48   ` Felipe Contreras
2013-04-25 11:06     ` Ramkumar Ramachandra
2013-04-29 14:00   ` Michael J Gruber
2013-04-25  9:09 ` Andreas Schwab
2013-04-25  9:13   ` Ramkumar Ramachandra
2013-04-25 19:08 ` Phil Hord
2013-04-26  8:19 ` Yann Dirson
2013-04-26  8:43   ` Johannes Sixt
2013-04-26 12:33     ` Ramkumar Ramachandra
2013-04-26 17:49     ` Junio C Hamano
2013-04-26 19:48       ` Felipe Contreras
2013-04-26 21:13         ` Junio C Hamano
2013-04-29 15:08           ` Ramkumar Ramachandra
2013-04-29 15:37             ` Yann Dirson
2013-04-29 16:05             ` Junio C Hamano
2013-04-29 17:14               ` Ramkumar Ramachandra
2013-04-29 17:33                 ` Junio C Hamano
2013-04-29 19:10                   ` Ramkumar Ramachandra
2013-04-29 19:23               ` Ramkumar Ramachandra
2013-04-30  4:02               ` Junio C Hamano
2013-04-29 15:20           ` Ramkumar Ramachandra

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='CALkWK0n97VLtiR96VEy86645NVoDL2rS-g7LBuLb=JpncdH6VA@mail.gmail.com' \
    --to=artagnon@gmail.com \
    --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).