一、找出并了解当前较为流行的几种源代码管理工具(至少三种);
1.Visual Source Safe( 简称 VSS )
2.SVN(Subversion)
3.ClearCase
二、建立表格对这些源代码管理工具的优缺点进行比较分析。
工具 |
易用性 |
功能 |
安全性 |
总体成本 |
技术支持 |
Visual Source Safe( 简称 VSS )
|
★★★★★ |
★★★ |
★★★ |
★★★★ |
★★★★★ |
易学易用是 VSS 的强项, VSS 采用标准的 windows 操作界面,只要对微软的产品熟悉,就能很快上手。 VSS 的安装和配置非常简单,对于该产品,不需要外部的培训
|
VSS 的配置管理的功能比较基本,提供文件的版本跟踪功能, VSS 提供 share (共享)、 branch( 分支)和合并( merge) 的功能,对于团队的开发进行支持。 VSS 不提供对流程的管理功能,如对变更的流程进行控制。 VSS 不能提供对异地团队开发的支持。此外 VSS 只能在 windows 平台上运行,不能运行在其他操作系统上。 |
VSS 的安全性不高,对于 VSS 的用户,可以在文件夹上设置不可读,可读,可读 / 写 , 可完全控制四级权限。但由于 VSS 的文件夹是要完全共享给用户后,用户才能进入,所以用户对 VSS 的文件夹都可以删除。这一点也是 VSS 的一个比较大的缺点。 |
VSS 没有采用对许可证进行收费的方式,只要安装了 VSS ,对用户的数目是没有限制的。因此使用 VSS 的费用是较低的。 |
由于 VSS 是微软的产品,可以得到稳定的技术支持。 |
|
优点:1.作为 Microsoft Visual Studio 的一名成员,它主要任务就是负责项目文件的管理,几乎可以适用任何软件项目。2.管理软件开发中各个不同版本的源代码和文档,占用空间小并且方便各个版本代码和文档的获取。3.对开发小组中对源代码的访问进行有效的协调。
缺点:1.文件大多会以独占的形势进行锁定。如果一个人在修改的时候其他人没有办法进行修改。2.VSS只支持Windows版本,且只兼容微软的开发工具。3.文件存储,服务器必须共享文件夹,对文件的安全性没有足够保障。 |
|||||
SVN (Subversion)
|
★★★★ |
★★★★ |
★★★★ |
★★★★★ |
★★★ |
Subversion支持Linux和windows,更多是安装在linux下。svn服务器有2种运行方式:独立服务器和借助apache。2种方式各有利弊。目前业界评价的SVN易用性正在提高。 |
SVN 的功能除具备 VSS 的功能外,还具有:它的客户机 / 服务器存取方法使得开发者可以从任何因特网的接入点存取最新的代码;它的无限制的版本管理检出 (checkout :注 1)的模式避免了通常的因为排它检出模式而引起的人工冲突;它的客户端工具可以在绝大多数的平台上使用。同样, SVN 也不提供对变更流程的自动管理功能。
|
一般来说, SVN 的权限设置单一,无法完成复杂的权限控制;但是 SVN 通过 SVN ROOT 目录下的脚本,提供了相应功能扩充的接口,不但可以完成精细的权限控制,还能完成更加个性化的功能。 |
SVN 是开发源码软件,无需支付购买费用。 |
同样因为 SVN 是开发源码软件,没有生产厂家为其提供技术的支持。如发现问题,通常只能靠自己查找网上的资料进行解决。 |
|
优点:1.管理方便,逻辑明确,操作简单,上手快。2.易于管理,集中式服务器更能保证安全性。3.代码一致性非常高。4.有良好的目录级权限控制系统。 缺点:1.对服务器性能要求高,数据库容量经常暴增,体量大。2.必须联网。如果不能连接到服务器上,基本上不可以工作,如果服务器不能连接上,就不能提交,还原,对比等等。3.不适合开源开发。4.分支的管控方式不灵活 |
|||||
ClearCase |
★★★ |
★★★★★ |
★★★★ |
★★ |
★★★★★ |
ClearCase 的安装和维护远比 VSS 复杂,要成为一个合格的 ClearCase 的系统管理员,需要接收专门的培训。 ClearCase 提供命令行和图形界面的操作方式,但从 ClearCase 的图形界面不能实现命令行的所有功能。如果Unix/Linux服务器上安装了Samba服务,可以直接通过Windows下Clearcase的客户端直接访问源代码,相对比较简单。 |
ClearCase 提供 VSS, SVN所支持的功能,但不提供变更管理的功能。 Rational 另提供了 ClearQuest 工具提供对变更管理的功能,与 VSS不同, ClearCase 后台的数据库是专有的结构。 ClearCase 对于 windows 和 unix 平台都提供支持。 ClearCase 通过多点复制支持多个服务器和多个点的可扩展性,并擅长设置复杂的开发过程。 |
ClearCase 的权限设置功能与 SVN 相比, SVN 有独立的安全管理机制, ClearCase 没有专用的安全性管理机制,依赖于操作系统。 |
要选用 ClearCase ,需要考虑的费用除购买 license 的费用外,还有必不可少的技术服务费用,没有 Rational 公司的专门的技术服务,很难发挥出 ClearCase 的威力。如现在网上虽有 ClearCase 的破解软件,但尝试应用的公司大多失败的缘故。另外,对于 web 访问的支持,对于变更管理的支持功能都要另行购买相应的软件。 |
Rational 公司已被 IBM 公司收购,所以有可靠的售后服务保证。 |
|
优点:ClearCase 功能完善,安全性好,可以支持复杂的管理,但学习曲线和学习成本高,需要集成 ClearQuest 才能完成完整的配置管理功能。大公司如果采用异地多研发中心同时开发的模式,一般推荐使用ClearCase。 缺点:ClearCase是集中式的。
|