软件配置工具
  1. 采用工具的好处
    1. 减少了人为因素

    </div>

    1. 节省人工实施配置管理所花费的时间

    </div>

    1. 发生配置问题的机会较少

    </div>

    1. 程序人员可集中精力在自己的工作中,不必担心配置问题

    </div>

  2. 软件配置管理工具的主要功能:
    1. 版本控制

    </div>

    1. 变更管理

    </div>

    1. 配置审核(配置审计)

    </div>

    1. 配置状态统计(查询和报告)

    </div>

    1. 问题跟踪(跟踪缺陷和变更)

    </div>

    1. 访问控制和安全控制

    </div>

  3. 采用配置管理工具的经济考虑:
    1. 购置工具软件的成本

    </div>

    1. 培训成本

    </div>

    1. 改变工作方式的代价

    </div>

  4. 常用的配置管理工具:
    1. Visual SourceSafe(VSS)

    </div>

    1. CVS

    </div>

    1. Subversion(SVN)

    </div>

    1. Git

    </div>

    1. Borland StarTeam

    </div>

    1. IBM Rational ClearCase & ClearQuest

    </div>

    1. PVCS (Polytron Version Control System)

    </div>

    1. Harvest

    </div>

    1. Firefly

    </div>

  5. 配置管理工具分级:
    1. 第一级(入门级):简单版本控制工具,如VSS、CVS等。

    </div>

    1. 第二级:项目级配置管理工具,适用管理中小型项目,如PVCS、Firefly等。

    </div>

    1. 第三级:企业级配置管理工具,具有强大的功能,如Harvest、ClearCase等。

    </div>

  6. 常用工具介绍
    1. Visual Source Safe(简称VSS): Microsoft

    </div>

     1. <div style="text-align: justify;">
         <span style="font-size: 9pt;">优点:简单易用,一学就会,<br /> </span>
       </div>
        
     2. <div style="text-align: justify;">
         <span style="font-size: 9pt;">缺点:</span><span style="color: #080808; font-family: Tahoma; font-size: 24pt;"><br /> </span><span style="font-size: 9pt;">只能在Windows下运行,适合于局域网(VSS 2005支持Internet)<br /> </span>
       </div>
        
     3. <div style="text-align: justify;">
         <span style="font-size: 9pt;">费用:VSS没有采用对许可证进行收费的方式,只要安装了VSS,对用户的数目是没有限制的。因此使用VSS的费用是较低的。<br /> </span>
       </div>
    
    1. CVS:Concurrent Version System(并行版本系统),开源,官方提供的是CVS服务器和命令行程序

    </div>

     1. <div style="text-align: justify;">
         <span style="font-size: 9pt;">优点:<br /> </span>
       </div>
            
         1. <div style="text-align: justify;">
             <span style="font-size: 9pt;">支持并发的版本管理,SourceSafe没有并发功能。CVS服务器的功能和性能都比SourceSafe高出一筹。<br /> </span>
           </div>
            
         2. <div style="text-align: justify;">
             <span style="font-size: 9pt;">CVS服务器是用Java编写的,跨操作系统。<br /> </span>
           </div>
            
         3. <div style="text-align: justify;">
             <span style="font-size: 9pt;">CVS服务器有自己专用的数据库,文件存储并不采用SourceSafe的&#8221;共享目录&#8221;方式,所以不受限于局域网,信息安全性很好。<br /> </span>
           </div>
        
     2. <div style="text-align: justify;">
         <span style="font-size: 9pt;">缺点:CVS的主要缺点在于客户端软件,真可谓五花八门、良莠不齐。Unix和Linux 的软件高手可以直接使用CVS命令行程序,而Windows用户通常使用WinCVS。安装和使用WinCVS显然比SourceSafe麻烦不少,这是比较令人遗憾的。</span>
       </div>
    
    1. SVN(Subversion):自由,开源的版本控制系统,以替代CVS为目标。

    </div>

    特点:

     1. <span style="font-size: 12px;">和CVS的相似性</span>
     2. <span style="font-size: 12px;">目录的版本化</span>
     3. <span style="font-size: 12px;">更加好的文件版本管理(例如对文件拷贝,重命名的处理)</span>
     4. <span style="font-size: 12px;">提交的原子性</span>
     5. <span style="font-size: 12px;">元数据的版本化</span>
     6. <span style="font-size: 12px;">可选的网络层</span>
     7. <span style="font-size: 12px;">对文本文件和二进制文件一致的差异比较算法</span>
     8. <span style="font-size: 12px;">高效的分支(branch)和标签(tag)操作</span>
     9. <span style="font-size: 12px;">良好的可维护性</span>  4. <div style="text-align: justify;">
     Firefly:Hansky
    

    </div>

    特点:

     1. <span style="font-size: 12px;">可以轻松管理、维护整个企业的软件资产,包括程序代码和相关文档。</span>
     2. <span style="font-size: 12px;">功能完善、运行速度极快</span>
     3. <span style="font-size: 12px;">可以支持不同的操作系统和多种集成开发环境,因此它能在整个企业中的不同团队,不同项目中得以应用</span>
     4. <span style="font-size: 12px;">真正的C/S体系结构,不依赖于任何特殊的网络文件系统,可以平滑地运行在不同的LAN、WAN 环境中</span>
     5. <span style="font-size: 12px;">安装配置过程简单易用</span>
     6. <span style="font-size: 12px;">并行开发和管理项目中各阶段点的各种资源,存储库的备份和恢复,而不依赖于任何第三方工具</span>  5. <div style="text-align: justify;">
     ClearCase:Rational被IBM收购
    

    </div>

     1. <div style="text-align: justify;">
         <span style="font-size: 9pt;">特点:贵(软件+培训),功能强大。ClearCase通过TCP/IP来连接客户端和服务器。另外,ClearCase拥有的浮动License可以跨越UNIX和Windows NT平台被共享。<br /> </span>
       </div>
        
     2. <div style="text-align: justify;">
         <span style="font-size: 9pt;">版本控制、工作空间管理(Workspace Management)、构造管理(Build Management)、过程控制(Process Control)。<br /> </span>
       </div>
            
         1. <div style="text-align: justify;">
             <span style="font-size: 9pt;"><strong>版本控制:</strong>先进的版本分支和归并功能用于支持并行开发,存储数据在一个可访问的版本对象类中(Version Object Bases, VOBS)。ClearCase把所有版本控制的数据存放在一个永久、安全的存储区中,这个存储区被称为版本对象类(Version Object Bases)。VOBs不仅是一个可连接的文件系统而且也是网上的资源──主机可以连接任何数量的VOBs.<br /> </span>
           </div>
            
         2. <div style="text-align: justify;">
             <span style="font-size: 9pt;"><strong>过程控制:</strong>集成了一些灵活、定制的工具;利用元数据抓取状态信息;定制的策略增强工具;&#8221;通知&#8221;特性能自动生成报表、交流信息。<br /> </span>
           </div>
            
         3. <div style="text-align: justify;">
             <span style="font-size: 9pt;"><strong>建立管理(构造管理):</strong>使用自制脚本或本机的make程序,但ClearCase的向上兼容建立工具clearmake和omake为构造提供了重要的特性:自动完成任务、保证重建的可靠性、存储时间和支持并行的分布式结构的建立。支持UNIX和Windows型的makefile的建立;自动检测所关联的原文件,包括所关联的头文件<br /> </span>
           </div>
            
         4. <div style="text-align: justify;">
             <span style="font-size: 9pt;">工作空间管理:通过视图(VIEW)的使用,ClearCase提供了一套独立的工作空间管理设施。版本间的透明访问;通过规则视图选择并显示版本;从没有安装ClearCase的主机平台进行视图访问。View分为SnapShot View和Dynamic View,Snapshot view是ClearCase在服务器上存储的文件和目录的一个本地镜像,用户可以在本地进行修改,然后进行同步,要经常Update View保持最新的版本;Dynamic View是动态试图,它并不在本地存储任何文件,始终和服务器保持一致。<br /> </span>
           </div>
    
    1. StarTeam:Borland 背Micro Focus收购

    </div>

    特点:技术工具贯穿了应用生命周期的各个环节。一个强大的软件配置管理系统,支持从一个单一的配置仓库定义和配置所有数字资产,并管理其整个生命周期。

     1. <span style="font-size: 12px;">针对所有企业资产的统一配置库</span>
     2. <span style="font-size: 12px;">高度优化的Client-Server交互</span>
     3. <span style="font-size: 12px;">可定制的工作流程和流程规则</span>
    

这篇文章可以看看:http://www.uml.org.cn/pzgl/200704061.asp

另外,网上下了篇不错的软件配置管理工具比较的文章,值得一看。如何选择配置管理工具