2009-07-09 69 views
4

我们目前正在确定是否将CVS和VSS项目移动到单个SVN服务器。SVN vs VSS vs CVS比较帮助

我一直在使用SVN很长一段时间,但被迫使用CVS和VSS工作的东西。

请您帮我解释为什么转移到SVN会比购买VSS 2005更好?而且从CVS转到SVN的好处是什么?

我们有C#.NET/Java/Perl/Visual Basic中的项目。

除了成本差异,我还能说些什么,让老板们说服他们转移到svn。

有没有办法在移动到SVN时保存VSS和CVS的历史记录?

+0

可能的重复:http://stackoverflow.com/questions/17524/what-is-so-great-about-subversion – 2009-07-09 03:34:11

回答

4

SVN vs CVS很简单。 SVN是作为一种新软件而开发的,用来代替CVS来纠正CVS的一些问题。

我知道的一个问题是在存储库中移动和重命名文件的问题。如果你倾向于在你的代码库中重构很多,这是一个大问题。

更多在这里找到:Limitations CVS维基百科。在VSS维基百科
而对于比较Criticism
这里SVN的Limitations维基百科

4

There are tools将CVS历史记录转换为SVN,并使用other tools迁移VSS历史记录 - 这样您就可以在移至更好的系统时使用它们。

对于所有的评论链接和其他地方,SVN往往比CVS或VSS一个更好的环境(除非你有一些奇怪的要求)的原因 - 如果你能成功地导入历史拯救公司钱,我不明白为什么老板不会去做它。

1

您绝对可以保存从VSS移动到Vault的历史,这不在您的列表中,但我强烈建议。如果其他开发人员习惯于VSS,他们在使用Vault时绝对没有问题。它不是免费的,但比许多替代品便宜很多。只要说服他们移动,VSS现在应该已经提供了自己的理由。我一直惊讶我们的VSS存储库从未崩溃,但我从来不知道另一个开发人员几乎每天都在修复它。

+0

幸运的是,我还没有使用VSS多年,所以我仍然有一些头发我头上。但是当我......甚至是VSS分析工具没有解决数据库中的一些古怪问题时。偶尔我们会将当前的存储库作为备份,并将当前代码快照到新的代码中以避免错误。 – devstuff 2009-07-09 04:05:01

+0

SourceGear Vault和Fortress免费提供一人许可证。 – 2009-07-09 09:52:39

0

有许多原因,从CVS升级到SVN。从2002年到2007年,我们使用CVS作为我们的源代码控制。在那段时间内我们会说,我们从来没有遇到CVS的一个问题。真正的问题在于CVS在功能开发方面从1998年开始就没有推进。

SVN比CVS最大的好处是必须是真正的自主提交。我们使用开源工具cvs2svn将我们所有的CVS项目拖到SVN。我们没有一个单一的问题,并且对所有事情都保持完整的历史。

VSS:这确实是有史以来最糟糕的微软产品之一。文件损坏,历史丢失和合并中的主要问题是离开的主要原因。在这一点上,我确信微软不赞成使用Visual Studio Team Edition中内置的Team Tools来支持VSS。

0

我约SVN喜欢的东西二:

  • 分支机构所作的方式是好的和简单。我永远无法完全摆脱CVS分支。

  • 隐藏的本地副本意味着像“svn diff”和“svn log”这样的命令不必联系服务器。这使得在未连接的笔记本电脑上使用签出的存储库更容易。

+1

如果你喜欢那些,那么你应该真的,真的,尝试Git。真正的分支支持和完整的本地历史可能会让你大开眼界。 – toholio 2009-07-23 05:35:42

10

这是需要大量细节的问题之一,但它会归结为“为什么喜欢使用SVN?”以及您可以从“喜欢”列表中向您的老板呈现的内容。

我已经使用了所有三种。我只能说出我自己的经验和偏见。我的使用历史是VSS - > CVS - > SVN

CVS

优点:

  • 它可以在互联网上
  • 非常稳定使用

缺点:

  • 重命名事情非常困难。这会导致很多痛苦。

我的主要牛肉是客户端软件。我发现所有的客户端软件不连贯和脱节。我绝对讨厌使用它。

VSS

优点:

  • 共享项目是死容易。
  • 集成以及与微软的IDE

缺点:

  • 它使用Microsoft Jet存储引擎,这是容易出现腐败不管它是访问。
  • 除非您购买SourceOffsite之类的东西,否则不能在您的LAN之外使用。
  • 结帐锁定文件和签入解锁文件可能会降低较大组中的生产力。很多新手开发人员将文件退出,其余的团队必须等待他们进行任何检查。
  • 微软不再开发这个功能。微软甚至没有将其用于他们的现金牛应用程序,如Office和Windows。他们实际上使用了Perforce的定制版本。

颠覆

优点:

  • 结帐编辑合并文件编辑周期很组队友好
  • 创建分支很便宜,而且不会复制物理文件
  • 它正在不断发展
  • 有几个颠覆p可选
  • 许多第三方供应商与Subversion集成在一起。它具有丰富的应用生态。
  • 一个主要优点是,你现在可以安全颠覆与Active Directory集成的树。

缺点:

  • 冲突的合并仍然可以在脖子上一个重大的痛苦,但这是一样的与大多数其他版本控制系统。
  • 安全可以根据哪个服务器(svnserve.exe或Apache/WebDAV的),你选择运行库是一个有点棘手使用。

我猜测,既然你的老板想购买VSS2005,这将在Windows上运行。我的建议是,你坚持使用这3个颠覆的发行版之一/包

一般颠覆安装包: 的CollabNet Subersion - http://www.open.collab.net/downloads/subversion/ 这将同时安装svnserver.exe(自定义服务器)和Apache/WebDAV的,或者你可以选择哪些一个在安装过程中安装。您可以使用http://和svn://协议来为您的存储库提供服务。

Subversion plus管理控制台: VisualSVN服务器 - http://visualsvn.com/server/ 他们自己做Subversion发行版。该软件包具有Microsoft管理控制台(MMC)管理单元来管理服务器。这将帮助您设置针对您的Active Directory树的权限。这主要是针对http://协议。

颠覆管理控制台: PainlessSVN - http://www.painlesssvn.com 这一个只能与svnserve.exe(自定义服务器)一起使用。这是一个Microsoft管理控制台(MMC)管理单元,用于管理设置和用户。这主要是针对svn://协议。

汤姆·里特给了一些很好的链接,将进口的历史和代码从CVS/VSS来颠覆工具。

1

其他人所说的,为什么SVN是你排队的最好的。另外你应该知道有比SVN更新,更好的版本控制系统。

两个伟大的有水银和Git。