All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.