这两天不清闲,前后比较了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包总是最新的,能够被所有人访问,这样就解决了权限和编译的问题。
目前测试已经通过,当然按照敏捷的思想,我认为代码集体所有还是一个趋势,以后不需要在开发人员内部做权限控制是最好的。慢慢来吧。
分享到:
相关推荐
配置管理论文模板 配置管理是软件开发过程中一个非常重要的环节,它涉及到软件开发的各个方面,包括需求管理、设计、实现、测试、部署等。配置管理的主要目的是确保软件开发过程中各个部分的协调一致,确保软件系统...
- **基线**:在配置管理中,基线是指经过正式审查和同意的,可以作为后续工作的基础的一个或一组配置项,并且只有通过正式的变更控制程序才能对其进行修改。基线通常用于定义软件或系统的某个稳定状态,以便进行版本...
"软件配置管理规范标准详细解读" 软件配置管理规范标准是软件开发过程中的一种重要管理机制,它确保软件产品在整个生命周期中的完整性。下面是该规范的详细解读: 1. 软件配置管理的目的:软件配置管理的目的是...
配置管理计划模板知识点 配置管理计划是软件开发过程中的一种重要管理工具,旨在确保软件系统的配置项得到正确的管理和控制。本文将详细介绍配置管理计划模板的重要知识点。 一、人员及职责 配置管理员是配置管理...
2. 配置管理计划的制定:访谈可能会涉及配置管理计划如何制定,包括如何确定配置管理的范围、制定配置管理策略、分配配置管理职责,以及配置管理过程中的关键活动。 3. 配置项的识别与控制:在访谈中,被问及者需要...
配置管理是IT项目管理中的重要组成部分,它涉及到软件开发过程中的版本控制、变更管理、基线确定以及系统集成等多个方面。配置管理审计检查单是一种工具,用于确保项目的配置管理活动符合既定的标准和最佳实践,从而...
《软件配置管理规范》是IT行业中至关重要的一个领域,它涉及到软件开发过程中的版本控制、变更管理和项目协作等多个方面。本规范通常包含配置管理计划、目录结构设计等内容,旨在为团队提供一套有序、可控的软件开发...
1 配置管理规范 1.1 概要 1.1.1 内容 本文用来规范配置管理活动,确保配置项正确地唯一标识并易于存取,保证基准配置项的更改受控,明确基线状态,在整个软件生命周期中建立和维护项目产品的完整性和可追溯性。 ...
### 配置管理基础知识 #### 一、引言 配置管理是软件开发过程中不可或缺的一部分,其目的是为了确保软件产品在各个阶段的质量与稳定性。通过有效的配置管理,可以提高团队协作效率,减少因版本混乱或代码不可追溯...
配置管理的目标是维护一个准确且最新的配置信息数据库,以便于IT部门管理和维护其基础设施。主要步骤如下: 1. **配置规划**:规划配置管理的整体战略。 2. **配置识别**:识别需要管理的配置项。 3. **配置项控制*...
胜任配置管理工程师需要具备相关的专业技能,如配置管理工具的使用、构建脚本的编写、工件的理解、软件工程、配置管理相关知识等,并且需要具备团队合作能力、与人沟通能力、配置管理威信等。 3. 配置管理工程师...
配置管理是IT行业中至关重要的一个领域,它涉及到软件开发项目的全过程,确保了产品在不同阶段的一致性、可追溯性和可维护性。本压缩包文件"配置管理资料.zip"提供了配置管理过程中的核心文档模板,有助于理解和实践...
### 未雨绸缪——理解软件配置管理(第2版) #### 一、软件配置管理的概念与重要性 软件配置管理(SCM)是项目管理的一个关键组成部分,它旨在确保软件产品的完整性并支持变更控制的过程。本书《未雨绸缪——理解...
### 产品开发部配置管理制度解析 #### 第一章 概述 **1.1 目的** 本章节明确指出制定该管理制度的主要目的是确保产品开发部研发项目文件的安全性与机密性,同时保障软件产品的完整性、有效性和可追溯性。这涉及到...
《软件产品配置管理办法》是关于如何有效管理和控制软件开发过程中的各种配置项,确保软件产品的质量和可追溯性的规范性文档。配置管理是软件工程的重要组成部分,它涉及到版本控制、变更控制、状态报告以及审计等...
配置管理是IT运维服务的核心环节,它涉及到所有硬件和软件的配置信息,这些信息对于运维人员来说至关重要。在日常工作中,配置管理要求严格,任何配置变更都需要有相应的文档记录,以便于客户管理和未来的工作需求。...
文档强调了配置管理流程与其他管理流程(如变更管理、问题管理、事件管理等)的互动和依赖关系,说明了配置管理如何为这些流程提供必要的支持和信息。 7. RACI模型 文档中可能还涉及了RACI模型,这是一种责任分配...
配置管理是IT行业中至关重要的一个领域,特别是在软件开发和信息系统维护中扮演着核心角色。清华大学的教材《配置管理》深入探讨了这一主题,旨在帮助学生和专业人士理解并掌握配置管理的理论与实践。 配置管理主要...