git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Martin Geisler <mg@lazybytes.net>
To: Jakub Narebski <jnareb@gmail.com>
Cc: Sverre Rabbelier <srabbelier@gmail.com>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	git list <git@vger.kernel.org>,
	mercurial list <mercurial-devel@selenic.com>,
	Aghiles <aghilesk@gmail.com>
Subject: Re: potential improvement to 'git log' with a range
Date: Wed, 23 Jun 2010 19:05:09 +0200	[thread overview]
Message-ID: <87bpb1issa.fsf@hbox.dyndns.org> (raw)
In-Reply-To: <m3tyrhfzg8.fsf@localhost.localdomain> (Jakub Narebski's message of "Sun, 11 Apr 2010 14:32:49 -0700 (PDT)")


[-- Attachment #1.1: Type: text/plain, Size: 1581 bytes --]

Jakub Narebski <jnareb@gmail.com> writes:

> Linus Torvalds <torvalds@linux-foundation.org> writes:
>
>> On Fri, 9 Apr 2010, Aghiles wrote:
>> >
>> > Oh, I should have read the documentation. I was certain that ".."
>> > stands for a range but it is a ... complement.
>>
>> Well, technically ".." means two different things
>>
>>  - for "set operations" (ie "git log" and friends) it's the "relative
>>    complement" of two sets (or "'reachable from A' \ 'reachable from B'").
>>
>>  - for "edge operations" (ie "git diff" and friends) it's just two
>>    end-points (aka "range"). A diff doesn't work on sets, it only
>>    works on the two endpoints.
>
> [...]
>> Most SCM's really talk about "ranges". Once you think in those terms,
>> complex history doesn't work. Git very fundamentally is much about
>> set theory, and "ranges" is a bad word to use.
>
> For example from I have got from asking on #mercurial IRC channel on
> FreeNode (a bit of self promotion: I have done this research to write
> an answer to "Git and Mercurial - Compare and Contrast" question on
> StackOverflow[1]), Mercurial implements its ".." equivalent in the
> term of _numeric range_, even for "hg log" (sic!).

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.

> [1]
> http://stackoverflow.com/questions/1598759/git-and-mercurial-compare-and-contrast/1599930#1599930


-- 
Martin Geisler

Mercurial links: http://mercurial.ch/

[-- Attachment #1.2: Type: application/pgp-signature, Size: 197 bytes --]



  reply	other threads:[~2010-06-23 17:05 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-09 23:24 potential improvement to 'git log' with a range Aghiles
2010-04-09 23:33 ` Santi Béjar
2010-04-09 23:33 ` Sverre Rabbelier
2010-04-10  0:13   ` Aghiles
2010-04-10  0:16     ` Sverre Rabbelier
2010-04-10  1:20     ` Linus Torvalds
2010-04-11 20:31       ` Aghiles
2010-04-11 21:32       ` Jakub Narebski
2010-06-23 17:05         ` Martin Geisler [this message]
2010-06-23 18:02           ` Jakub Narebski
2010-06-23 19:19             ` Martin Geisler
2010-06-23 21:24               ` Jakub Narebski
2010-06-23 22:04                 ` Martin Geisler
2010-06-23 19:36       ` Jay Soffian
2010-06-23 20:26         ` Junio C Hamano
2010-06-23 20:45           ` Jay Soffian
2010-06-24 20:31           ` Junio C Hamano
2010-06-24 22:49             ` Jay Soffian

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=87bpb1issa.fsf@hbox.dyndns.org \
    --to=mg@lazybytes.net \
    --cc=aghilesk@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=jnareb@gmail.com \
    --cc=mercurial-devel@selenic.com \
    --cc=srabbelier@gmail.com \
    --cc=torvalds@linux-foundation.org \
    /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).