适用于Windows的最佳VCS解决方案是什么?

时间:2009-08-21 00:31:52

标签: windows version-control

我的代码库变得越来越大,很难用目录组织所有不同的分支,我想知道什么是适合自己个人使用的版本控制系统在Windows上工作(有点麻烦)? / p>

PS:我不是在寻找像GitHub,SourceForge或Google Code这样的托管VCS。

9 个答案:

答案 0 :(得分:9)

如果你正在为自己设置一些东西,那么DVCS(d for distributed)版本控制系统将比Subversion更容易设置。 (编辑:我纠正了,TortoiseSVN让你很容易设置一个存储库。即使如此,除非你已经知道SVN并且想要坚持使用它,否则我会选择DVCS。我发现它们对于较小的项目来说不那么麻烦,如果你在多台机器上使用它时,如果出现HD问题,整个事情都会得到备份。)

Git,Mercurial和Bazaar中的任何一个都是不错的选择。 Windows上的Git仍然没有本机客户端,虽然有些通过模拟器可以正常工作,所以我不会那样做。 Mercurial很容易在Windows上安装(如果你需要,可以使用TortoiseHg进行shell集成),我相信Bazaar也是如此。如果我不知道任何一个,我会选择Mercurial而不是Bazaar,因为它被更广泛地使用,我会选择一个。

This SO question与Windows上的Git / Mercurial / Bazaar有关。

答案 1 :(得分:4)

Subversion

  • 它很受欢迎,并拥有庞大的社区。
  • 分支和标记很简单。
  • 它的自由开源。

此外,下载TortoiseSVN,它为您提供了一个漂亮的图形界面并具有Windows Shell集成,因此您可以在资源管理器中右键单击文件和文件夹并执行VCS操作。

答案 2 :(得分:3)

从您的选择中,除git之外的任何东西都适用于Windows。但是因为你只是为自己使用它,所以像VSS和SVN这样集中的东西可能太多了,因为你需要设置一个单独的存储库。所以现在归功于Bazaar和Mercurial。

恕我直言,如果你单独工作,这两个人真的很棒。这两者之间的区别在于它支持的性能和工作流程:

<强>巴扎

您可以配置集市以支持您想要的任何类型的工作流程。您可以使用SVN等集中式工作流程,并在一个存储库下拥有多个分支,或者您可以像任何其他DVCS一样进行分发。

<强>水银

你不能在一个存储库下拥有多个物理分支,如Mercurial,如SVN或bazaar,但mercurial恕我直言的好处是简单的用户界面非常简单,性能比集市快(尽管市场变得更快并且在他们最近的版本中更快)。


在选择这两者之间,你应该缩小到什么是你的首要任务?绩效或工作流程?

答案 3 :(得分:3)

尝试Plastic SCM

  • 精湛的分支和合并(包括完全重命名和每个项目的可追溯性)
  • 非常强大的可视化选项:分支资源管理器,3D version tree,统计信息
  • 分布式(可能是唯一完全以图形方式设计并可在Windows上运行的DVCS)
  • 支持多个数据库后端:MySQL,SQL Server,Oracle,Firebird ......
  • 完全集成在Visual Studio中
  • 服务器可以在任何地方运行(Linux,Mac,Windows)
  • 巨大的文件支持

答案 4 :(得分:2)

如果您打算稍微使用分支机构,我肯定会建议远离SourceSafe。事实上,远离SourceSafe时期。

我在生产环境中使用了SVN,git和Sourcesafe,而且我更喜欢前两个而不是Sourcesafe。它对我的喜欢太笨拙了,而且往往会自行匆匆忙忙做随意的事情。然后你需要Visual Studio集成,这只是一个令人头疼的问题。

SVN很不错,大部分时间都很有用。更高版本支持单击合并,从一个分支到另一个分支的注释,这是以前缺少的。

git速度更快,实际上它的速度非常快。学习曲线非常陡峭,你会盯着git文档,想知道它到底想要告诉你什么。

答案 5 :(得分:1)

Perforce是一个出色的商业VCS,我已经使用了10多年。它具有特别好的分支和合并能力。我经常在国际上通过VPN使用它而没有任何问题。

没有许可证,您有2个用户的限制(非常适合个人使用/小型项目),否则需要花费$$$

答案 6 :(得分:0)

您是打算在同一台计算机上使用外部服务器还是运行服务器?

如果您打算使用自己的外部服务器,我会推荐Mercurial。即使您无法访问服务器,分布式系统也可以分支并继续签入(例如,您在笔记本电脑上编写代码,而不是使用VCS服务器在网络上)。

如果您打算使用同一台机器,我建议使用Subversion。它得到了坚实的Windows支持,并没有让我失望。

答案 7 :(得分:0)

我是Sourcegear Vault的粉丝。基础架构开销略高(需要SQL Server Exrpess或更高版本),但它们确实提供免费的单用户许可证,如果需要,您可以获得良好的支持。

答案 8 :(得分:-7)

SourceSafe对个别项目的合理运作良好。 Subversion也是一款可靠的免费产品,但设置比VSS更难。如果你想砸下一些现金并拥有最佳的Visual Studio经验,那么Team System也是一个选择。