top | item 9467306

(no title)

pseudonym | 10 years ago

I started with and loved Mercurial as a DVCS, and it still has some QoL commands that Git requires some hoop-jumping to get at, but ultimately the deciding factor was the inability to permanently delete branches. Since branched dev work would fairly regularly have generic names or the names of the developer working on it, it would always end up being forked and merged instead of branched and merged, which led to a ridiculous number of headaches in our build system.

We still use mercurial for most of our repositories just because they're dated and not likely to see more than a handful of commits a year, but most of our active development work has already converted to git.

discuss

order

sampo|10 years ago

> inability to permanently delete branches

If your workflow fits better with git-style branches, you should use Mercurial bookmarks, not Mercurial named branches.

Mercurial even tells you:

    (branches are permanent and global, did you want a bookmark?)
every time you create a named branch.

loxs|10 years ago

Well, IMHO, nowadays this classifies as bad design. It may have been the better design, but currently git's nomenclature is the standard and not complying to it will only hurt mercurial.

Skinney|10 years ago

I used bookmarks back when I used Hg, which is a couple of years ago, but I had some problems with them. From time to time bookmarks wouldn't update remotely. This made me always push twice, to make sure the bookmark was updated. They've hopefully fixed that now, but it was one of my main gripes with Hg. That, and that the Jira version we switched to didn't support bookmarks.

krupan|10 years ago

Not sure what the difference between "forked and merged" and "branched and merged" is. You can use rebase/histedit to delete branches in mercurial if you want to.