
On 03/19/2012 10:48 AM, Sergiu Dotenco wrote:
On 19.03.2012 15:02, Daryle Walker wrote:
Git has a competitor called Mercurial? If we're moving to a Distributed-VCS, should we go to Mercurial instead of Git? While we're at it, Google's analysis of Git and Mercurial shouldn't be neglected: http://code.google.com/p/support/wiki/DVCSAnalysis
FYI, here is a somewhat more entertaining, but still relevant, comparison which frames git as MacGyver and mercurial as James Bond. http://importantshock.wordpress.com/2008/08/07/git-vs-mercurial/ I'm sorry if I am fanning the flames of resurrecting an old discussion. I did a little searching to see if this question had a distinct decision on the forums. I saw discussions that were primarily focused on "why DVCS?" not "which DVCS?" It looks like the Boost wiki asks the question of "Why Git?" ( https://svn.boost.org/trac/boost/wiki/Git/WhyGit ) but does not answer it. Perhaps the deciders can give more information on the wiki? Then when this comes up again, simply provide the link. My anecdote: Take it for what it's worth ( maybe two cents) ... I first encountered DVCS by helping out under the Eigen c++ library project. I quickly became a convert to the concept of dvcs and secondarily to mercurial as an implementation. I talked the rest of the developers at my company into migrating our then-cvs repos forward to something more modern. I did not want to taint the decision by simply grabbing for what I knew. So we weighed out the pros and cons of using various distributed version control systems. The fight quickly devolved to hg vs. git. In the end we chose mercurial because 1. Hg did everything we could envision needing to do. Mostly through simple prebuilt commands, infrequently by more advanced scripting see "hg help templates" or "hg help revsets" to get a flavor of the power. 2. The commands and concepts of mercurial are closer to the cvs/svn concepts we knew. Many of the commands are actually the same. This minimized the cost of converting our coders, which far outweighs the cost of converting our code. 3. Hg is simpler than git for doing common tasks ( or at least seemed so to us -- see #2) There were various other minor reasons that tipped us toward mercurial, like cross-platform consistency and hg's habit of keeping the repo compressed. Let me end by applauding Boost for doing the right thing. Moving from svn to any DVCS is a step in the right direction. The detail of which one is a nuance.