[haiku-development] Re: Mercurial

  • From: Niels Reedijk <niels.reedijk@xxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Tue, 2 Mar 2010 09:49:35 +0100

Hi Andreas,

On 1 March 2010 20:51, Andreas Färber <andreas.faerber@xxxxxx> wrote:
> Hi Niels,
>
> Am 28.02.2010 um 23:56 schrieb Niels Reedijk:
>
>> On 28 February 2010 23:32, Andreas Färber <andreas.faerber@xxxxxx> wrote:
>>>
>>> Am I doing something terribly wrong, or is there no concept of rebasing
>>> as
>>> opposed to merging in Mercurial?
>>
>> If by wrong you mean not looking beyond the end of your nose, then yeah.
>>
>> http://mercurial.selenic.com/wiki/RebaseExtension
>
> Thanks for the pointer! hg pull --rebase is exactly what I searched for.
>
> It is not obvious that you have to activate basic commands in a FOSS
> application you installed. Once you know that, the list of such extensions
> is only one click away.
>
> Andreas
>
> P.S. Niels has actually had the opportunity to see my nose; sorry for not
> reading this earlier, I spent the evening bootstrapping Mono on Haiku.
> If anything, this proves my point of having followed the wrong tutorial and
> shows hg is not well documented. I still haven't found a proper command
> reference, and I had already looked at both the documentation section and
> into the book. Git is slightly better in that aspect but all three could use
> some more love helping people do what they need to do and skip the recurring
> 'create a new repo, add a file, commit it' nonsense.

I was just surprised that you went out of your way to describe the
rebasing process, and never gotten the idea to google 'hg rebase' or
'mercurial rebase'.

Now the reason that rebasing is not part of the official distribution
is because mercurial and git have two different philosophies. I would
say that mercurial is a revision control system (in which history is
sacred) as opposed to git which is more a patch control system. That
is why git is so much more flexible (which makes it so much more
complex).

To illustrate that point, there has always been a way to 'rebase',
through the MQ (merge queue) extension. That extension is a patch
control system on top of a mercurial repository.

Whenever you compare Git and Mercurial, keep that in mind. Their
philosophies will to a large part influence the actual development
process, and as such it is important to keep them in mind when
dreaming about a future SCM for Haiku.

N>

Other related posts: