strange phases order (public < draft < secret)

Matt Mackall mpm at selenic.com
Fri Jan 3 23:06:07 UTC 2014


On Fri, 2014-01-03 at 23:31 +0300, anatoly techtonik wrote:
> On Fri, Jan 3, 2014 at 9:47 PM, Matt Mackall <mpm at selenic.com> wrote:
> > On Fri, 2014-01-03 at 20:33 +0300, anatoly techtonik wrote:
> >> I really don't get why changeset evolution phases
> >> are inverted in Mercurial. You start with secret and
> >> draft changesets, which then are evolved into public.
> >>
> >> So, logicall the "public" is "higher" on the evolution
> >> chain. Why is it the reverse?
> >
> > Just about every display of changesets shows more recent changes above
> > older ones. Also, earlier revisions have lower numbers. So down = lower
> > = older = public is the natural direction.
> 
> I kind of can accept that, but it is still confusing to hear that
> public is older
> than secret and draft.
> 
> > Originally, the analogy for phases was frozen vs liquid, and thus there
> > was an obvious temperature component to the analogy as well.
> 
> The analogy that public is more hot is cool. =)
> 
> > Evolution is a concept that came later (and is not even quite yet part
> > of hg, while phases have been a core feature for years).
> >
> > $ hg help phases | grep evolution
> 
> Sorry, Windows here. No grep, and even less is not possible if you
> don't know more.
> 
> Is there any desire to invert the phase of phase terminology?

Here's what would happen if we did that:

- some subset of new users would be less confused
- some subset of existing users would be MORE confused

This is an extremely bad trade-off. While it's nice to make things
slightly better for new users (and we try really hard to do that), it's
extremely not nice to change things for the many people who have already
invested the time to learn your system once and now rely on you not to
jerk them around for the next decade by changing things.

So when you give me a question like this, the answer will almost always
be: throw the new users under the bus, long live the old users.

I know this is not a common or popular position in software development,
but I personally want to make THE OPPOSITE of the kind of software you
wisely avoid upgrading as long as possible and then curse for weeks or
months when you finally do, which seems to be the norm.

-- 
Mathematics is the supreme nostalgia of our time.





More information about the Mercurial mailing list