potential improvement to 'git log' with a range

Martin Geisler mg at lazybytes.net
Wed Jun 23 17:04:08 CDT 2010


Jakub Narebski <jnareb at gmail.com> writes:

Hi Jakub,

By the way: please let me know if you prefer that I keep these mails on
Mercurials mailinglist. I've just had a long chat about it with our own
moderator and he felt it was rude to cross-post like this. I, on the
other hand, value a polite cross-list discussion like this.

> On Wed, 23 Jun 2010, Martin Geisler wrote:
>> Jakub Narebski <jnareb at gmail.com> writes:
>>> On Wed, 23 Jun 2010, Martin Geisler wrote:
>>>
>>>> This is fixed with Mercurial 1.6: we now have a query language where
>>>> 'X..Y' (or 'X::Y') is understood as the set of changesets that are
>>>> both descendents of X and ancestors of Y.
>>>
>>> Thanks. It looks like Mercurial's 'X::Y' is equivalent to Git's
>>> '--ancestry-path X..Y' (the --ancestry-path option is a new feature).
>> 
>> Yeah, it is equivalent to --ancestry-path. I had no idea Git's range
>> operator worked the way it does :-)
>> 
>> For mercurial-devel: 'X..Y' is a shorthand for '^X Y', which in turn
>> means ancestors of Y, excluding ancestors of X (and excluding X).
>
> Err... so how it is for X..Y / X::Y in Mercurial? "Ancestors of Y,
> excluding ancestors of X" is larger range (and default result for X..Y
> in Git) than "descendants of X and ancestors of Y" (i.e. the result of
> new --ancestry-path X..Y in Git).

I described Git's X..Y for people on mercurial-devel. Mercurial's X..Y
is like Git's --ancestry-path X..Y (except that Mercurial include both
endpoints whereas Git excludes X).

Mercurial's X..Y behave the way it does because it felt natural and
because I though Git's X..Y behaved that way.

> See http://repo.or.cz/w/git.git/blob/refs/heads/pu:/Documentation/rev-list-options.txt#l582

Yes, that was the document I read in order to see how Git's X..Y works.

>>>>> [1]
>>>>> http://stackoverflow.com/questions/1598759/git-and-mercurial-compare-and-contrast/1599930#1599930
>>>
>>> Fixed. Could you please take a look if it is correct, and if there
>>> are errors, either correct it yourself, or ask me to do it (either
>>> via comments for this question, or via email)? Thanks in advance.
>> 
>> Yes, its correct now. But would you object if I or someone else took
>> out all those personal opinions and rewrote it from a neutral point
>> of view?
>
> Well, I do provide disclaimer upfront that I am biased towards Git,
> and I have tried to be objective.
>
> But I don't mind if someone who uses Mercurial fixed that side, and
> tried for neutral point of view (but not introducing the opposite
> bias). There would be problem with NPOV with issues without clear
> answer, where personal preference matters, though.

Great, then I may edit it a bit sometime...

-- 
Martin Geisler

Mercurial links: http://mercurial.ch/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20100624/47b7d746/attachment.pgp>


More information about the Mercurial-devel mailing list