[petsc-dev] [mpich-discuss] MPICH migration to git

Sean Farley sean.michael.farley at gmail.com
Wed Jan 9 22:39:40 CST 2013


On Wed, Jan 9, 2013 at 10:33 PM, Jed Brown <jedbrown at mcs.anl.gov> wrote:
> On Wed, Jan 9, 2013 at 10:08 PM, Sean Farley <sean.michael.farley at gmail.com>
> wrote:
>>
>> There has historically been only one branching model … ever.
>
>
> They have one thing they call a branch, another thing they call a bookmark,
> another thing they call mq... They're all taking different approaches to
> mostly-overlapping problems. Git has exactly one thing, which they call
> "branch", that covers the whole gammut and is part of the base system (not
> an extension) since day 1.

Well, first of all, mq is being deprecated. Matt Mackall wanted a
general solution that would work in the mercurial framework. That
solution is the changeset evolution concept. Once I started using that
workflow, I whole-heartedly agree that mq is a pain and I could never
go back.

>> What git
>> invented was the concept of a bookmark and called it a 'branch'. It's
>> a placeholder that isn't permanently written into the changeset.
>
>
> The data model of hg bookmarks is equivalent to git branches. The difference
> is (a) integration with the rest of the system and (b) bookmarks are fragile
> in somewhat deep ways that Hg does not appear interested in fixing "because
> that decision was made a long time ago".

Ah, yes, I've seen those replies to your tickets. What you might not
realize is that the solution is coming with changeset evolution (it
sounds like I'm now trying to sell bibles or something with all this
evolution talk). What was missing was a way to hide or mark changesets
as obsolete. That is now in mercurial-dev.

>> > As for consensus shifting towards git, I know only a few people that
>> > have
>> > used both seriously and still prefer Hg. Meanwhile, there are a ton of
>> > serious Python folks that prefer git (Lisandro, Andy Terrel, SciPy,
>> > NumPy,
>> > PyClaw, etc).
>>
>> And how many of these people / projects have been influenced by you?
>> All the ones you listed (mpich, lib mesh, Lisandro, Andy Terrel,
>> SciPy, NumPy,  and PyClaw) seem to have spent time with you and your
>> git-is-the-only-way model.
>
>
> You give me *way* too much credit. ;-)

But what if these people had been shown how to use `hg evolve`
instead? Would they still have switched to git?



More information about the petsc-dev mailing list