Why you don't want to allow disabling "branches are global and permanent, did you want a bookmark"?

Adrian Buehlmann adrian at cadifra.com
Thu Aug 9 09:12:56 CDT 2012


On 2012-08-09 15:35, Augie Fackler wrote:
> 
> On Aug 9, 2012, at 4:00 AM, Adrian Buehlmann wrote:
> 
>> On 2012-08-09 10:43, Laurens Holst wrote:
>>> Op 08-08-12 21:51, paul_nathan at selinc.com schreef:
>>>> I would FAR rather see this line entirely removed.
>>>
>>> Definitively rejected, so why bring it up *again*?
>>
>> Because it was a bad decision, for the reasons laid out by multiple
>> people in this thread here.
>>
>> FWIW, I have only seen the config option definitely rejected (which I
>> agree with).
>>
>> The config option is not needed, because there is no need for such a
>> warning at all.
> 
> Nonsense. I can't count the number of users that have expressed hatred for Mercurial because it's branches aren't git branches, and then as soon as I show them bookmarks they are happy as can be. In my experience talking to users, the vast majority of users that look for branches really want bookmarks.

And how does that relate to what I wrote exactly?

You have a number of users who haven't yet discovered that Mercurial
isn't git. Great. So what?

You are now proposing that Mercurial should mention on every command
that Mercurial's branches aren't git branches or what?

> I agree though, it'd be nice if there was a way to only warn a few times before trusting the user to blow his own foot off. I'm actually a proponent of the config option, because I can't come up with a heuristic that we won't regret later.

Let's face it: users not wanting to read manuals (or not even the short
help texts of Mercurial) will *always* do silly things, no matter what
we do. That shouldn't be an excuse to annoy the current Mercurial
userbase. And, as you know, Mercurial's branches were there before the
advent of bookmarks.

The hint in the help of the branch command is really enough. There is no
need to treat users (who actually know what they do) like idiots every
time they use the branch command. Or confuse users who have just learned
what a Mercurial branch is with that notice about bookmarks.

Mercurial has a good tradition of showing "what's next" in the (..)
part. That's why I proposed to do:

  $ hg branch foo
  marked working directory as branch foo
  (the branch name will be permanently recorded on commit)

There's really no need to mention an unrelated concept (bookmarks) there.

We shouldn't start trying to make Mercurial look like git. There is no
need to do so. And we can't anyway.





More information about the Mercurial-devel mailing list