我已经在Windows上使用git有一段时间了(使用msysGit),我喜欢分布式源代码控制的想法。就在最近,我一直在关注Mercurial (hg),它看起来很有趣。然而,我无法理解hg和git之间的区别。

有人把git和hg放在一起比较吗?我很想知道hg和git有什么不同,而不需要加入粉丝的讨论。


当前回答

最大的不同在于Windows系统。Mercurial是本地支持的,Git不支持。你可以通过bitbucket.org获得与github.com非常相似的托管(实际上更好,因为你得到了一个免费的私有存储库)。我曾经使用过一段时间的msysGit,但后来转到Mercurial,我对它非常满意。

其他回答

如果您对Mercurial和Git的性能比较感兴趣,请参阅本文。结论是:

Git和Mercurial都取得了不错的成绩,但在速度和存储库大小之间进行了有趣的权衡。Mercurial在添加和修改方面都非常快速,同时还能控制存储库的增长。Git也很快,但它的存储库在修改文件后增长非常快,直到重新打包——而这些重新打包可能非常慢。但是打包的存储库比Mercurial的要小得多。

mercurial网站对这两个系统的异同进行了很好的描述,解释了词汇和基本概念的差异。作为一个长期的git用户,它确实帮助我理解Mercurial的心态。

如果从SVN迁移,请使用Mercurial,因为它的语法对SVN用户来说更容易理解。除此之外,任何一种选择都不会错。但是在选择之前一定要检查GIT教程和HGinit。

我认为关于“Mercurial vs. Git”最好的描述是:

“Git是韦斯利·斯奈普斯。Mercurial是丹泽尔·华盛顿

在你的项目中有基于windows的合作者吗?

因为如果有的话,Git-for-Windows GUI就显得笨拙、困难、不友好了。

相比之下,“windows上的水银”则是显而易见的。