Svn 你从subversion变成mercurial了吗?这值得付出努力吗?

Svn 你从subversion变成mercurial了吗?这值得付出努力吗?,svn,mercurial,Svn,Mercurial,我正在更好地了解Mercurial版本控制系统,并正在考虑从SVN转换。 有人已经皈依了吗?你和你的团队很难转换吗? 你能给我一些建议让我留在SVN或者选择Mercurial吗 一旦你开始,你就再也不想回去了。优势是巨大的 我故意避免在SVN下进行分支,因为每次合并都需要几个小时的调整。现在,我期待分支,因为它工作得很好。这使得开发新功能变得更加容易 此外,离线工作的能力非常棒 这将详细介绍转换过程(非常简单)。您可以保存您的历史记录,但可以从DVCS中获益 本文详细介绍了DVCS的好处,因此我

我正在更好地了解Mercurial版本控制系统,并正在考虑从SVN转换。
有人已经皈依了吗?你和你的团队很难转换吗?
你能给我一些建议让我留在SVN或者选择Mercurial吗

一旦你开始,你就再也不想回去了。优势是巨大的

我故意避免在SVN下进行分支,因为每次合并都需要几个小时的调整。现在,我期待分支,因为它工作得很好。这使得开发新功能变得更加容易

此外,离线工作的能力非常棒

这将详细介绍转换过程(非常简单)。您可以保存您的历史记录,但可以从DVCS中获益


本文详细介绍了DVCS的好处,因此我将提到Mercurial的一个特殊优势。如果您使用像这样的GUI,您会惊喜地发现。此应用程序不断改进,使您可以轻松查看挂起的更改和历史更改。要达到这样的质量水平需要一段时间,但现在,我讨厌使用TortoiseSvn,因为在审查待定的更改和决定要提交的内容时,情况更糟。

我没有mercurial的经验(改用git)但是像mercurial或git这样的好的DVC与svn在经验上的不同是,一旦你通过了学习曲线,你就真的无法回头了

  • 本地提交释放了您的工作流,您对功能进行编码的方法决定了您何时提交,而不是影响工作方式的提交
  • Svn的线性修订号为-坏-。提交(尤其是带有分支的提交)与简单的递增映射没有很好的对应关系
  • 局部分支使划分特征变得更加容易和更好,原型设计变得更加简单
  • (虽然关系不大,但)离线工作往往能让你比竞争对手更快地做出改变
我最近有一份工作,在使用git一两年后,我又回到了使用集中式svn存储库的状态。我通过使用git svn桥接器来实现这一点,发现与svn相比,我对提交有很大的控制能力,并且可以使提交和分支处于静止状态、翻滚状态,并以一种比使用同事的svn更有用的方式发挥作用,此外,由于本地提交的粒度和频繁性,我通过比较进行了大量的提交。这是一个很大的好处


我真的很建议给自己一些时间使用DVCS。

我转换了。起初我只是想尝试一下,但现在我已经成为了一个超级粉丝。我实际上并没有转换我的个人存储库,我只是导出了最新的文件并将其添加到一个新的Mercurial存储库中

一些基本的hg命令与svn中的命令类似,因此应该可以帮助您开始适应。这是对乔尔不同之处的解释


重要的是,对使用汞的新工艺持开放态度。它允许更多的分支和快速提交,如果您使用打破颠覆思维模式,您将从hg中获得最大收益。

有人能确认Mercurial真的比SVN慢吗?当然,本地提交很快,可能只是网络化的hg存储库相当慢?那么通过https访问存储库又如何呢?我将把它放在Win2K3服务器上。@twk:如果hg比svn慢,那是一个错误。事实上,我听说mercurial在网络提交方面的基准测试比svn稍慢,因为svn针对每个提交都进行了优化,必须是网络提交,尽管我认为通过快速的本地提交可以很容易地恢复时间。不过,在大多数其他方面,mercurial可能会更快。请记住,SVN 1.7将于年中推出,并承诺提供Git/mercurial stlye DVCS功能:我喜欢这篇文章,它立即解决了一个大问题:SVN分支很难,因此它不鼓励提交正在进行的工作,hg分支很容易,因此,它鼓励提交/保存您的所有工作。这是一件非常重要的事情。本地提交对于DVCS来说并不是唯一的。它们只是还没有在其他系统上实现。在+-Subversion 1.8中计划对其进行支持。