软件版本控制规范.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
德信诚培训网 更多免费资料下载请进: HYPERLINK / 好好学习社区 软件版本控制规范 引言 目的 为规范并制度化公司软件版本管理,保障项目开发资料(源代码、文档)的完整性、安全性,明确源代码控制管理流程,特制定此规范,重点在于控制源代码的完整性、安全性,不被非授权获取、复制和传播。 适用范围 源代码直接控制管理部门为软件开发部,本规范适用于所有由网通软件开发部管理的源代码,所有涉及接触源代码的各岗位都必须严格执行本管理规范。 术语定义 SDK:软件开发工具包,是Software Development Kit的简称 SVN: subversion,软件版本管理工具 管理工具 我们使用SVN来进行版本管理、源代码管理、开发资料归档。 资料归档 归档要求 开发资料应该按下述方法来归档。 每个产品类型对应于版本服务器根目录下的一个目录,大类下面可以分成小类。 产品类型目录的下一级方案名称,比如Cortina、Marvell、TK、Opulan。方案名称的下一级是源代码目录、release目录,所有自研项目的源代码都应该放在相应的产品类型目录下,源代码目录包含toolchain、bootloader、kernel、app、脚本等,release目录应该包含项目软件版本及文档,如下面的表格所列。 根目录 一级目录 二级目录 三级目录 四级目录 五级目录 备注 software 产品类型1 (如PON) 方案名称1 (如Cortina) 源代码目录1 子目录 …… 这是一套SDK,可能用于多个项目/产品 …… …… …… …… 源代码目录2 …… …… …… …… …… release 项目1 《软件需求规格书》 《软件可行性分析报告》 《软件设计说明书》 《软件技术规格书》 《装备软件开发指导书》 《软件质量评审报告》 版本1 软件版本目录应包含: 《升级文件》 《烧录文件》 《软件自测试报告》 《软件版本发布说明》 版本2 …… …… …… 项目2 …… …… …… 方案名称2 (如Marvell) …… …… …… …… …… …… …… 产品类型2 (如xDSL) …… …… …… …… …… …… …… …… …… 数据备份 数据丢失有时造成的损失是无法弥补和估量的,为了保证代码的一致性和完整性,防止数据因意外事件受损、丢失,必须定期执行数据备份。 要求每星期备份一次,由管理员实施,同时记录到备份日志。备份也可依照实际项目情况增加备份密度。 源代码管理 源代码完整性保障 所有软件的源代码文件及相应的开发设计文档均须及时加入到指定的源代码服务器中的指定库中。 我们研发的产品软件运行所依赖的第三方软件、控件和其它支撑库等文件也必须及时加入源代码服务器中指定的库中。 软件开始编写或者调整代码之前,相应的设计文档和代码必须先从相应的SVN库进行svn update操作。软件编码或功能调整结束测试正确无误后,相应的源代码必须进行svn commit操作,在最终进行svn commit操作之前需要再进行svn update操作,查看是否有冲突产生,如果有冲突产生需要和冲突相关人一并解决冲突。 源代码的授权访问 源代码服务器对于SVN库的访问建立操作系统级的,基于身份和口令的访问授权。 在SVN库中设置用户,并为不同用户分配不同的、适合工作的最小访问权限,要求连接SVN库时必须校验SVN中用户身份、口令以及对应的权限。在SVN库中要求区别对待不同用户的可访问权、可读权、可写权。 以下是对各个角色的权限定义。 管理员:对所有项目都有创建项目,新增、删除、修改、下载的所有项目和文件权限。 项目管理员:对所负责的项目有创建项目和新增、删除、修改、下载本项目文件权限。 项目成员:对所参与的项目有新增、删除、修改、下载本项目文件权限。 源代码安全性保障 曾经涉及、触及源代码的计算机在转作它用,或者离开研发部门之前,必须由网络管理人员全面清除计算机硬盘中存储的源代码。如果不能确定,必须对计算机中所有硬盘进行全面格式化后方可以转做它用或离开研发部门。 版本管理 此处描述的版本管理对于一个完整的SDK(比如BRCM CPE SDK)或者单独的模块(比如VOIP模块)都是适用的。 版本库布局 项目的源代码版本库布局一般是这样的,trunk目录保存开发的主线,branches目录存放分支拷贝,tags目录存放标签拷贝。 主线版本和分支版本 满足产品规格要求、代码成熟的SDK可以作为主线版本,分支版本是主线版本的拷贝,由于客户特殊定制要求,某些部分与主线版本不同且无法共存于一条线。 标签可以是主线版本或者本地拷贝的一个快照,标签一般不修改。 版本分支 一套SDK往往可以应用于多个产品上,不同的产品的规格要求是不同的,因此我们需要在主线上 分支。

文档评论(0)

guocuilv2018 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档