Re: potential improvement to 'git log' with a range
From: Martin Geisler <hidden>
Date: 2016-06-15 22:49:00
Jakub Narebski [off-list ref] 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:quoted
Jakub Narebski [off-list ref] writes:quoted
On Wed, 23 Jun 2010, Martin Geisler wrote:quoted
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.
quoted
quoted
quoted
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/
Attachments
- (unnamed) [application/pgp-signature] 197 bytes