软件版本管理制度
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件版本管理规X
系统软件开发部
2011-9-20
目录1引言3
1.1目的3
1.2X围3
1.3术语定义3
1.4版序控制记录4
1.5版本更新记录4
2版本管理4
2.1流程图4
2.2版本命名7
2.3版本升级7
2.3.1版本升级原则7
2.3.2新版本的发布8
2.4目录结构8
2.5文档的存放9
2.5.1文本文件的存放9
2.5.2源代码的存放9
2.5.3发行文档的存放9
2.6权限控制管理10
3备份管理10
3.1源文件备份10
3.2库文件备份10
4用户版本管理10
5版本工具的使用11
5.1配置管理工具11
5.2CVS的使用11
5.2.1常用命令11
5.2.2简单操作12
5.2.3版本分支管理12
1引言
1.1 目的
本文档是为规XXXXXXXXX软件版本管理而制定的。
1.2 X围
本文档为系统软件开发部版本管理员提供有关版本管理规X的相关内容,包括:
●版本标识方法
●软件系统数据的存放
●文档的修改控制
●文档的备份制度
1.3 术语定义
CVS
CVS是一个开源的版本控制系统Concurrent Versions System的简称
文档
一种数据媒体和其上所记录的数据。
配置管理
标识和确定系统中配置项的过程,在系统整个生存周期内控制这些项的投放和更动,记录并报告配置的状态和更动要求,验证配置项的完整性和正确性。
软件配置
软件的具体形态在某时刻的瞬时影像。
配置项
软件配置管理的对象称为配置项,如:系统规格说明书,项目开发计划,用户手册,源码。
基线
软件生存周期中各开发阶段末尾的标记,它的作用是把各阶段工作的划分更加明确化,使本来连续的工作在这些点上断开,使之便于检验和肯定阶段成果。
1.4 版序控制记录
1.5 版本更新记录
2版本管理2.1 流程图
2.1.1文档归档流程
2.1.2文档变更流程
2.1.3代码归档流程
2.1.4代码变更流程
2.1.5配置管理流程
1、开发人员完成所负责模块的代码编写任务后,提交到项目经理处
2、项目经理向测试部门提交测试任务
3、配置管理员准备测试所需的环境
4、测试人员开展测试并实时提交BUG
5、开发人员处理测试过程中所出现的BUG,并提交给测试人员进行回归测试,直至BUG被关闭
6、测试基本完成后,测试人员提交测试报告
7、项目情况根据实际情况决定是否发布新的版本
8、配置管理员与各相关人员经讨论后确定好新版本各项信息
9、配置管理员发布新版本
2.2 软件版本命名
软件版本号由四部分组成,第一个1为主版本号,第二个1为子版本号,第三个1为阶段版本号,第四部分为日期版本号加希腊字母版本号,希腊字母版本号共有5种,分别为:Alpha、Beta、RC、Release。例如:1.1.1.051021_Beta。对于小项目或子系统而言,可简化为<主版本号>.<次版本号>.<修订版本号>,如 1.0.0。
*主版本号:当功能模块有较大的变动,比如增加多个模块或者整体架构发生变化。此版本号由项目决定是否修改。
* 子版本号:当功能有一定的增加或变化,比如增加了对权限控制、增加自定义视图等功能。此版本号由项目决定是否修改。
* 阶段版本号:一般是Bug 修复或是一些小的变动,要经常发布修订版,时间间隔不限,修复一个严重的Bug即可发布一个修订版。此版本号由项目经理决定是否修改。
* 日期版本号用于记录修改项目的当前日期,每天对项目的修改都需要更改日期版本号。此版本号由开发人员决定是否修改。
* Alpha版: 此版本表示该软件在此阶段主要是以实现软件功能为主,通常只在软件开发者内部交流,一般而言,该版本软件的Bug较多,需要继续修改。
* Beta版: 该版本相对于α版已有了很大的改进,消除了严重的错误,但还是存在着一些缺陷,需要经过多次测试来进一步消除,此版本主要的修改对像是软件的UI。
* RC版: 该版本已经相当成熟了,基本上不存在导致错误的BUG,与即将发行的正式版相差无几。
* Release版: 该版本意味“最终版本”,在前面版本的一系列测试版之后,终归会有一个正式版本,是最终交付用户使用的一个版本。该版本有时也称为标准版。一般情况下,Release不会以单词形式出现在软件封面上,取而代之的是符号(R)。
2.3 版本升级
2.3.1版本升级原则
版本升级应严格纳入版本管理的控制之下。应当谨慎地控制版本的升级,保障高版本的向下兼容性,或提供严格定义的升级方法。
在下面几种情况下,进行版本演化和升级:
1、当产品发生重大修改和改进时,主版本号加1。重大修改和改进包括:
1)平台迁移;
2)开发工具的迁移;
3)体系结构的变迁。
2、当产品发生较小的改进或修改时,次版本号可以加1。
3、对于改动量比较少的,如修改产品的错误,可升级修订版本号。
4、记录版本升级过程。每次版本升级,都要填写版本升级记录表,记录表样例如下:
版本升级记录表
说明:
版本号: 记录当前发布的版本。 发布日期:该版本批准发布的日期。
修改文件:版本修改记录文件,一般为版本修改日志。
2.3.2 新版本的发布
新版本的发布包括主版本号和次版本号的升级,一般不包括内部版本号的升级。流程如下:
1、根据项目进展情况,或者根据用户需要进行发布准备。
2、将发布所需文件进行打包,放在指定目录中,给目录加上标签Tag ,标签中包含将要发布的版本信息。
3、同样对源码文件也要加上与版本信息相关的标签Tag 。 标签Tag 命名规则如下:
组成:模块首字母+下划线+文件类型+下划线+主版本号+次版本号+内部版本号+时间(+下划线+合并标记)
样例:qzcj_src_1_0_0_110923,qzcj 表示采集模块的首字母,src 表示源码,1_0_0表示将要发布的版本号,合并标记可省略,只在有合并操作时注明,其中合并前的标记为mbe
, 合并后的标记为maf 。
2.4 目录结构
但为了能更好地管理各项目组的文档,建议可将被管理的配置项分为三大类:文档类、源码类及安装盘类,这样存放比较清晰,有利于版本管理,现将目录结构整理如下: