

Mercurial 3.5 Released - ngoldbaum
http://gregoryszorc.com/blog/2015/07/31/mercurial-3.5-released/

======
ngoldbaum
I've said this in the past on HN posts about mercurial but it bears repeating:
if you had bad experiences with mercurial in the past, I strongly urge you to
spin up one of the latest releases. Engineers at Google, Facebook, Mozilla,
and Unity contribute regularly and mercurial has become more feature rich and
substantially faster over the past few years.

Mercurial does everything that git does (in fact, you can pull from or push to
git repos with hg-git), has a UI that's easier to learn, and has online help
that is terse and helpful. As far as killer features go, check out phases[1]
and changeset evolution[2]. The latter is still at alpha level and the UI is
unstable, but I use it for day-to-day work and find it incredibly useful.

[1]
[https://mercurial.selenic.com/wiki/Phases](https://mercurial.selenic.com/wiki/Phases)

[2] [https://bitbucket.org/marmoute/mutable-
history](https://bitbucket.org/marmoute/mutable-history)

~~~
shuzchen
I'm also a big fan of hg revsets:
[https://www.selenic.com/hg/help/revsets](https://www.selenic.com/hg/help/revsets)

Granted, it's not a commonly used feature by solo devs working on their own
projects, but is useful for team repos that get large enough where you need to
do audits on the codebase.

~~~
emn13
Even though I use git day-to-day, I keep around an hg-git clone specifically
for revsets. What's the point of a version control system if you can't
actually find anything in the history?

~~~
leonardinius
Thanks for the tip.

I never thought of this particular use case. Will give it try.

------
sergiotapia
Every couple of months I get bummed out Mercurial lost the mindshare war years
ago. I used Mercurial before Git and it was perfectly fine and easy to reason
about. [http://hginit.com/](http://hginit.com/) helped me start out, and it
was amazing to be able to work on code without blocking other team members.

I know Git now not because it's nice to use, but due to rote memorization and
muscle memory.

~~~
nailer
There's a lot of times when the alternative may be (if one could measure these
things), '20% better' than the mainstream tech.

The things is, they'd need to be '500% better' to offset the network effect of
the mainstream tech.

------
jordigh
I'm very excited about this release. I would like to promote my own small and
insignificant contribution to it.

I made a few improvements to the template engine to make it easier to write
your own templates. An example is the new built-in `hg log --template=status`
or `hg log -T status` for short. For each commit it displays file additions,
removals, and modifications using the same style as `hg status`. Copies are
displayed if you pass the --copies/-C flag, just like `hg status` too. You can
see this template in the map-cmdline.status file in the installed Mercurial
templates directory:

[https://selenic.com/hg/file/tip/mercurial/templates/map-
cmdl...](https://selenic.com/hg/file/tip/mercurial/templates/map-
cmdline.status)

I especially like this example because it exhibits Mercurial's extensibility
and overall philosophy very well. Rather than cluttering the CLI with a bunch
of extra obscure options (such as a hypothetical --status option), we provide
a generic mechanism where more advanced users can hook their own
customisations into. We do not complicate the UI for the uncommon case.

------
anton_gogolev
Mercurial truly rocks. Yes, Git seems to have won the mindshare of developers
in the OSS world, but Mercurial is quite strong in a corporate environment.
And for some reason HgLab [1] (of which I am the author of) seems to be quite
popular in medical institutions.

[1]: [https://hglabhq.com](https://hglabhq.com)

------
LukeHoersten
Some really exciting updates in here. It seems that while Git is popular for
open source projects (thanks to GitHub), Mercurial is popular for internal
repos and companies. That's personally how I use it.

~~~
noir_lord
I'd still use Mercurial if I could but every library/framework I use on a
regular basis lives in a git repo so I just stopped fighting the current and
learnt enough git to keep my sanity.

~~~
philtar
hg-git and hg-github

I just started using them yesterday. So far so good.

~~~
LukeHoersten
I've been using hg-git for years for almost all my git contributions. Works
well.

------
pnathan
Always lovely seeing Mercurial work. It really is the elegant tool for source
control.

------
stephenr
Seems like the link for downloading OS X binaries is broken.

If you tell me "just use Homebrew" I will berate you a LOT.

~~~
stephenr
There is actually an issue filed for this bug. [https://bitbucket.org/segv/hg-
website/issues/23/download-now...](https://bitbucket.org/segv/hg-
website/issues/23/download-now-link-broken)

~~~
ngoldbaum
You've got the wrong bug tracker:
[http://bz.selenic.com/show_bug.cgi?id=4769](http://bz.selenic.com/show_bug.cgi?id=4769)

~~~
stephenr
I didn't file that bug I just found it. Thanks for the link to the other bug
though.

------
alblue
People still use Mercurial?

~~~
mrits
if we rewrote mercurial in clojurescript and renamed it to ninja-control
everyone would be blown away by the feature list

