In my view, the popularity of the platform should be a major
consideration. Git is known to have a significantly larger market
share than Mercurial. The majority of the requests on this list have
been for Git. The easiest platform for users to get involved with is
the one they're already using (SVN doesn't count... not a DVCS).
GIT also has better .NET support. For example:
* GitExtensions is .NET (providing Visual Studio integration)
* libgit2 with C# bindings (as well as many other languages)
* NGit
* GitSharp
Our closest cousins are also on GIT... Hibernate and Castle. In my
view, GIT has more force behind it, making it a good choice for the
future as well.
As another example of Git's popularity, Apple released XCode 4 (the
IDE for iPhones and such) and it not only supports Git, but uses it as
the default VCS when you start a project.
Git and Mercurial have evolved to the point where they're largely the
same, so I don't think we're going to see much in the way of pertinent
technical discussion. My opinion is that we "go with the flow" and
use Git.
This final note may seem irrelevant to some, but my company is using
Git. This makes it easier for me to involve developers in improving
NHibernate without having to manually integrate their changes. Of
course they could use Mercurial too, but it's less of a hurdle since
they're already used to Git.
Patrick Earl