`

配置管理

阅读更多
       这两天不清闲,前后比较了VSS,CVS以及SVN三个源代码管理工具。之前的.NET项目一直是使用VSS来进行管理,只是现在需要向VSS服务器添加大量的文件和文件夹,但是没有找到任何有效的方式能够让我们快速添加,要知道,要添加的文件数量在三万个,通过VSS添加实在是太慢。通过VS2005将项目添加到VSS中去,也是一样,添加几个文件夹,VS2005就死掉了。不知道有其它更好的添加方式。
       不过,据说VSS已经被VSTS淘汰了。但是,VSTS实在是太大了,因此,去除了VSS的打算。
       之后,打算使用CVS来进行管理。使用CVSNT以及TortoriseCVS,使用Pserver协议,可能是由于我的笔记本问题,其它人访问CVSNT速度很慢,主要是通过验证的时候很慢。上网查,发现确实如果文件个数很多的话,CVSNT的特点就显现了,速度慢。因此,将CVS放弃。可惜了,我对CVS的概念还是相当熟悉的,没有用上。
       之后,就是打算使用SVN来管理了。SVN相对CVS有一些改进,主要的改进在于提供更多的权限访问控制,访问速度也有提高。另外,配置上也要简单一些。因此,就使用SVN了。SVN1.4.5 + TortoriseSVN就好了。
       权限管理的问题,在SVN1.2之后已经有一个比较好的解决方法。通过passwd定义用户名和密码;通过authz定义文件级别的访问控制。网上有一篇文章讲这个,比较清楚,但是换到我这边,总是不能使用[Repository:/path/to/file]的方式,未果,只能使用[path/to/file]的方式,搞定了权限的问题。
       但是,最关键的问题,是要支持不同权限用户的编译。之前采用Firefly配置库进行管理,需要管理classes,classes所有人都有。编译文件通过classes生成所需要的lib文件。这种方式需要我们既edit src又要edit classes,增加了程序员的负担。
       因此,我需要找到一种方法:只需要edit src就能够编译。方法也很简单,但是由于以前的代码目录实在是比较复杂,一时要完全改掉换成新的结构,没有问题,但是怕有其他暂时没有想到的问题,因此决定先保留原来的目录结构,改变编译方式。
经过一个下午的奋战,搞清楚了。将以前classes生成的JAR直接放在common lib下,然后改变编译的classpath,让从现在的lib中找,而不是从classes文件中找。此外,当用户还有源代码的时候,编译生成jar包需要替换common lib下的JAR包,这样才能保证JAR包总是最新的,能够被所有人访问,这样就解决了权限和编译的问题。
       目前测试已经通过,当然按照敏捷的思想,我认为代码集体所有还是一个趋势,以后不需要在开发人员内部做权限控制是最好的。慢慢来吧。
分享到:
评论

相关推荐

    软件配置管理详细规定.docx

    软件配置管理详细规定 软件配置管理是软件生命周期中的一种重要管理活动,旨在确保软件的配置符合组织的要求和标准。本文档详细规定了软件配置管理的要求、步骤和标准,以确保软件的使用符合组织的安全性、适用性、...

    软件配置管理规范标准[详].pdf

    "软件配置管理规范标准详细解读" 软件配置管理规范标准是软件开发过程中的一种重要管理机制,它确保软件产品在整个生命周期中的完整性。下面是该规范的详细解读: 1. 软件配置管理的目的:软件配置管理的目的是...

    中南大学软件学院软件配置管理复习重点整理

    软件配置管理是软件工程中至关重要的一环,主要目的是在软件开发和维护过程中有效控制和跟踪软件的变化,确保软件质量并提高生产效率。中南大学软件学院的复习重点中,详细阐述了软件配置管理的核心概念、目标、关键...

    配置管理计划模板 配置管理计划模板

    配置管理计划模板知识点 配置管理计划是软件开发过程中的一种重要管理工具,旨在确保软件系统的配置项得到正确的管理和控制。本文将详细介绍配置管理计划模板的重要知识点。 一、人员及职责 配置管理员是配置管理...

    项目配置管理计划项目配置管理计划

    项目配置管理计划 项目配置管理计划是软件项目中不可或缺的一部分,它的目的是确保配置项正确地唯一标识并易于存取,保证基准配置项的更改受控,明确基线状态,在贯穿整个软件生命周期中建立和维护项目产品的完整性...

    CMMI中CM配置管理访谈的相关问题集锦.pdf

    2. 配置管理计划的制定:访谈可能会涉及配置管理计划如何制定,包括如何确定配置管理的范围、制定配置管理策略、分配配置管理职责,以及配置管理过程中的关键活动。 3. 配置项的识别与控制:在访谈中,被问及者需要...

Global site tag (gtag.js) - Google Analytics