我负责一个小型开发团队,我们主要处理数据库开发。我们目前使用 MS Visual Source Safe 作为我们的源代码控制系统,但它有其局限性,我们正在认真考虑改变。你会选择什么系统?
11 回答
对于一个小团队,SVN 是最好的,以我的经验(我过去使用过 CVS、SVN 和 VSS)。
它功能强大,拥有庞大的用户群,以及 Web 界面等良好的工具。
有些人可能会推荐 git,但我认为这对于你的描述来说太过分了。
我们的团队使用Sourcegear的Vault,它很像 CVS 或 VSS,只是没有一些皱纹。
几个月前,我们的团队 (.NET) 切换到了Subversion / TortoiseSVN、VisualSVN(用于 VisualStudio 集成)和Trac。我不能足够推荐这些工具。
考虑使用 SVN,从个人经验来看,我会远离 ClearCase。
在我的公司,我们最近开始使用源代码控制来跟踪架构和存储过程中的数据库更改。让我们在 SVN 下跟踪变化,这极大地帮助了我们。遗憾的是,之前 4 年的工作已经丢失,因为在此之前,关于数据库的任何内容都没有受到任何形式的修订控制。
我会远离集中式的,分布式版本控制系统提供了更多的灵活性,同时仍然允许集中式的工作方式。
对于更多的技术人员来说,git 可能会更好,毕竟它是由 Linux 内核人员开发的。
Bazaar 或 mercurial 可能更适合那些寻求易用性的人。
颠覆,寻找Visual SVN,它免费且真正易于使用。
强制执行。
商业软件,它不像SVN那样免费,但它很棒。跨平台、易于使用、GUI、命令行等。
特别是对于数据库开发,以防万一您使用 MS SQL,我建议您查看 Red Gate 的SQL 源代码控制产品,它可以在 SVN/TFS/VSS/Vault 上工作并有助于源代码控制数据库。
不是免费的,但一个非常好的(!)系统是“PlasticSCM”:http ://www.plasticscm.com/demos/plastic28/index.html
与分支一起工作,这对于并行开发非常有用(“每个任务模式的分支”)。对于每项任务(票证、错误、问题等),您都创建一个子分支。Plastic 将更新磁盘上的“工作区”,因此所有文件都有正确的版本。您可以根据需要进行尽可能多的更改和签入,因为您在自己的分支中工作,因此如果您签入无法编译的内容,其他人不会遇到麻烦!这很好用!
如果您切换到另一个分支(因为您必须快速修复错误),所有更改都“搁置”在服务器上,当前工作区会自动更新到另一个分支,您可以进行一些更改+签入,切换回您的分支正在处理中,并且所有文件都再次被搁置,因此您可以从以前的位置继续。非常非常棒。
它有一个非常酷的 GUI 客户端,也适用于 MacOS + Linux。
我相信 SVN + SQL Examiner Suite 是让您的数据库处于版本控制之下的最佳解决方案。
TFS 2010 - 您应该有权为 5 人使用它,否则会有各种便宜的公司优惠。
将其设置在具有虚拟化功能的体面计算机上 - 一个 vm TFS、一个 SQL、一个(可能)构建(仅)。
使用 SQL Server 进行源代码控制。
集成工作项跟踪
可以将持续集成与测试等集成。
可以为文档集成共享点。
在 2010 版本中易于设置;)