Subject: Re: [BUG] Highly inconsistent diff UI

From: Thomas Rast <[email-masked]>
Date: Wed, 24 Apr 2013 22:44:27 +0200

Ramkumar Ramachandra <[email-masked]> writes:

> Ramkumar Ramachandra wrote:
>> I'm also considering making the first
>> argument optional (just git log ~rebase.autostash), and defaulting to
>> mean [nearest fork point].
>
> Actually both can be optional.  In A~B, A defaults to [nearest fork
> point] and B defaults to HEAD.
>
>     git log ~
>
> Isn't it beautiful?

Please don't.  The syntax you propose doesn't work for several reasons,
but do we really need one?  How often would you actually use it?

Ok, since you ask, the reasons are:

* Looking for the nearest fork point is expensive and subject to change
  by simply fetching.  I hope you meant "... and exclude its upstream",
  i.e., A defaults to @{u}, which might be at least somewhat useful.

* ~ is already taken; in your syntax, A~1234567 is ambiguous because
  1234567 can both be a SHA1 and a number of generations to go back.

I personally think we have enough magic revision syntax to last at least
another decade.  If you propose to add some, please make a patch that we
can cook in next for a few release cycles and then conduct a straw poll
if people actually use it.

-- 
Thomas Rast
trast@{inf,student}.ethz.ch