我的代码库变得越来越大,很难用目录组织所有不同的分支,我想知道什么是适合自己个人使用的版本控制系统在Windows上工作(有点麻烦)? / p>
PS:我不是在寻找像GitHub,SourceForge或Google Code这样的托管VCS。
答案 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)
此外,下载TortoiseSVN,它为您提供了一个漂亮的图形界面并具有Windows Shell集成,因此您可以在资源管理器中右键单击文件和文件夹并执行VCS操作。
答案 2 :(得分:3)
从您的选择中,除git之外的任何东西都适用于Windows。但是因为你只是为自己使用它,所以像VSS和SVN这样集中的东西可能太多了,因为你需要设置一个单独的存储库。所以现在归功于Bazaar和Mercurial。
恕我直言,如果你单独工作,这两个人真的很棒。这两者之间的区别在于它支持的性能和工作流程:
<强>巴扎强>
您可以配置集市以支持您想要的任何类型的工作流程。您可以使用SVN等集中式工作流程,并在一个存储库下拥有多个分支,或者您可以像任何其他DVCS一样进行分发。
<强>水银强>
你不能在一个存储库下拥有多个物理分支,如Mercurial,如SVN或bazaar,但mercurial恕我直言的好处是简单的用户界面非常简单,性能比集市快(尽管市场变得更快并且在他们最近的版本中更快)。
在选择这两者之间,你应该缩小到什么是你的首要任务?绩效或工作流程?
答案 3 :(得分:3)
尝试Plastic SCM:
答案 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也是一个选择。