文档库 最新最全的文档下载
当前位置:文档库 › 版本控制工具CVS学习)

版本控制工具CVS学习)

版本控制工具CVS学习)
版本控制工具CVS学习)

版本控制工具CVS学习报告

报告人:刘津

报告日期:2012年03月19日CVS是Concurrent Version System(并行版本系统)的缩写,用于版本管理。它的基本工作思路是这样的:在一个台服务器上建立一个仓库,仓库里面可以存放许多不同项目的源程序。由仓库管理员统一管理这些源程序。这样,就好象只有一个人在修改文件一样,避免了冲突。每个用户在使用仓库之前,首先要把仓库里面的项目文件下载到本地,这样用户做的任何修改首先都是在本地进行的。然后进行提交,由CVS仓库管理员统一修改。这样就可以做到跟踪文件变化,冲突控制等等。

由于CVS是典型的C/S结构的软件,因此它也分服务器和客户端两部分。下面就从服务器和客户端的角度讨论CVS的使用。

一、CVS服务器的安装及使用

1、CVS服务器的安装

在Windows下面安装CVS服务器步骤并不繁琐,按照提示默认安装即可。我安装版本的是CVSNT-2.0.58d。

2、CVS服务器的使用

CVS服务器的操作页面CVSNT Control Panel包含以下6个面板:About关于,Repository Configuration仓库配置,ServerSettings服务器配置,Compatibility Options兼容性配置,Plugins插件配置,Advanced高级选项。

其中,在About面板可以查看运行状态,面板上有个cvsnt 和 cvsnt lock二个选项,可以对其进行start,stop服务。在Repository Configuration仓库配置:在此可以添加删除仓库,设置仓库名称。其它四个面板按照默认安装即可。

3、使用DOS命令操作CVS服务器

使用DOS命令可以设置CVS环境变量,登录CVS,添加/删除新用户,修改用户密码,查看仓库下面的文件列表,设置用户权限。

下面以我安装的CVS为例,我把CVS安装在了自己计算机上面。

⑴设置环境变量:set cvsroot=:pserver:liujin@localhost:/cvstest

Pserver是协议名字,liujin是管理员用户,localhost代表服务器名称(服务器的Ip地址),cvstest是创建的仓库名称。

⑵设置好环境变量以后就可以登录了。CVS login,此时会提示输入密码。

⑶添加/删除新用户:

Cvs passwd –r 管理员用户–a 用户名字:添加新用户,与管理员具有一样的权限;

Cvs passwd –x 用户名字:删除新用户;

随后会提示输入该用户的密码。需要说明的是,在创建用户的时候,需要手动修改CVSROOT文件下面的passwd文件,在新添加的用户后面添加管理员用户的名字,否则不能成功添加用户。每当添加一次用户就需要手动修改一次。

⑷修改用户密码:cvs passwd 用户名字,随后会提示输入新密码。只可以修改普通用

户的,如果管理员用户也是操作系统用户则不能用这个方法修改密码。

⑸查看仓库下文件列表:cvs list。只有管理员用户可以使用这个命令,此命令可以列

出仓库下面的文件。Cvs checkout 模块名字,可以查看模块下面的文件列表。

⑹从服务器取出项目和文件,cvs checkout 项目名字

二、CVS客户端的安装以及使用

1、CVS客户端的安装

CVS有许多中客户端。 TortoiseCVS客户端从界面来说,比较直观。在Windows下面安装CVS客户端步骤并不繁琐,按照提示默认安装即可。所有用户只需安装客户端程序,所有操作都在客户端上进行,服务器端程序由配置管理员负责安装和维护,服务端安装和配置略2、CVS客户端的使用

CVS有不同于其他版本控制系统的独一无二的工作方法,开发人员可以同时在CVS里面编辑同一个文件。首先从仓库里面取出原始代码的一个版本到本地机的工作目录上。这样就可以轻松的编辑你想要编辑改变的文件。可以新增加文件,或者移除不需要的文件。当修改完成时,可以commit存入仓库。

如果在你正在修改的时候有人已经改变了同一个文件,那么commit存入的时候会失败。这个时候就应该先从仓库Update更新所有你的原始代码。这个自动地合并其他开发人员的改变到你的文件里面。有时候CVS不能自动这么做,例如,当有两个人同时改变了同一程序代码。这个叫做冲突。当然,冲突发生的次数很少。CVS把冲突原始代码的两个版本都放在仓库档案里面,会以记号来分割他们。然后在你能提交改变之前,必须由管理员手动编辑文档以解决冲突。

这种工作的好处是,每个开发人员都处在测试沙箱中。另一个开发人员所作的改变与你隔离,直到你想要存入你的改变。任何开发人员可以在文件上工作,而不需要直接存取服务器,他们只需要链接到服务器上来更新和存入。

TortoiseCVS日常操作

更新:从服务器下载最新版本到本地,每次修改文件前都需执行该操作;

提交:把每次修改或添加文件、删除文件都上传到服务器上;

添加内容:添加内容到相应的目录下,服务器也对应存放添加的内容;

注:每次修改文件养成先更新文件后修改文件的习惯;

每次添加内容到服务器需先添加再提交的操作;

添加时TCVS会自动识别文本文件和二进制文件,不需手工调整;

TCVS支持文件的锁定,把某个文件选中编辑状态可把文件状态传达给其他组员;TortoiseCVS高级操作

选中某个文件右键菜单CVS下一级菜单操作:CVS差异比较、历史、版本分支图、批注、显示已编辑的文件、取消编辑状态、生成补丁文件、更新到指定版本、标签、分支、合并、删除等;

CVS差异比较:

绑定版本比较工具可对源代码各个版本进行差异比较;

历史:选中某个文件可以查看某个文件的版本历史,查看版本线、更新日期、修订者、注释(提交日志)等。

版本分支图:选中可查看文件的各个版本分支以及各个分支的版本演进情况,以及版本标签情况。

批注:对于源代码或文本文件选择该菜单可查看相应文件每行所对应的最新版本号,以及修订者、日期,可方便的查看源代码的每行最新版本。

更新到指定版本:可对文件或目录按标签、分支、修订版本、日期更新到所需要的文件。标签:在开发过程中的某个阶段,给一个或多个文件打上一个公共标签,以指示修订情况,称之为标签。标签一般都是用在整个模块,以便将来这个模块的当前状态可以回溯。这种标签一般打在整个工程可以使用之后,但是正式发布之前。

分支:在一个软件项目周期中,分支是一个很有用的修改控制。例如,如果你已经推出了你的软件的第一个版本1.0,现在你已经在下一个版本2.0增加新功能。此时你的第一个版本

发现了BUG,你的新版本的源代码正在开发阶段,推出稳定版本至少需要一个月的时间,因此无法基于最新版本推出一个修正原有BUG的版本。所以检出版本1.0所有文件,基于版本1.0建立分支再进行修改、提交。

合并:版本合并有两种情况:分支版本合并到主干版本上和主干版本合并到分支版本上。一般为保持主干版本保持更新状态,一般进行分支版本合并到主干版本上,但有时分支版本由于采用客户的特殊需求等其他原因不能与主干版本保持一致,而分支版本也需要采用主干版本的最新开发成果则进行主干版本合并到分支版本上操作,操作.

删除:删除文件也如同添加文件操作类似,必须先对文件或目录进行标识删除(TCVS支持目录递归),然后执行提交操作,只是说明下一版本文件被标识为删除状态,执行更新后最新版本没有对应文件。

三、TortoiseCVS客户端操作使用注意事项

1、提交文件注意本地备份数据,以免造成提交失败(客户端操作失误或服务器故障都可能造成提交失败)时丢失文件;

2、研发人员不允许在库中自己建立项目/模块,文件的读取和存放必须按照设定的规则进行提交和更新,导入模块提交时特别注意目录路径的正确性;

3、提交的文件名称不能大于16个汉字(32个字符),否则不能提交;

4、每个目录下的CVS目录不能删除,该目录是关联本地文件和服务器文件的必要文件目录;

5、客户端检出服务端的目录和文件后不能进行文件夹的移动删除操作,文件夹移动后cvs 目录下的Entries文件对应的目录路径没有修改,所以更新、提交失败,提示为:“no such directory”;

6、CVS里的revsion和软件包的发布版本可以没有直接的关系,但所有文件使用和发布版本一致的版本号比较有助于维护;

三、服务器的迁移说明

1、打开CVSNT,双击图标打开CVSNT控制面板(CVSNT Control Panel)。

2、在“CVSNT控制面板”中选择“Respository configuration”选项卡

3、在“Respository configuration”选项卡点击“add”按钮,添加“Server Settings”。设

置好“Location”和“Name”。

4、点击“OK”后,提示初始化cvsserver,选择“是”,则在“C:\cvsserver”目录下有“Root”

目录。新CVS服务配置成功。

5、开始迁移旧有的CVS历史库。在原来CVS服务器中找到“CVSNT Control Panel”的

图标

6、将原CVS服务器的cvsserver目录下所有文件及文件夹复制到新的CVS服务器的

cvsserver目录下(全部覆盖)。

7、在CVSNT控制面板的“About”选项卡中将“CVSNT”和“CVSNT Lock”重启(先点击Stop

按钮,再点击Start按钮”

8、CVSNT服务端迁移完成。

四、修改CVSnt的用户验证登录模式

一般情况下,默认使用系统用户作为CVS管理员,也就是Windows和CVSNT混合验证方式,这个方法是不安全的。因此要通过设置,更改配置,使用CVS登录。

首先把config第二行改为#SystemAuth=no表示,所有的用户必须在passwd中存在,根据passwd的内容来进行用户的验证。第二要创建admin文件,里面写入管理员名字。格式为输入一个名字后按一次回车。这个文件默认情况下是没有的,但是可以在客户端进行添加,添加之后要把它提交上传到服务器。这样就可以更改用户验证登录模式。

五、用户权限设置

1、为CVSROOT根目录设置访问权限

管理员登录WINCVS,在操作面板上点击查看——浏览——改变,可以设置自己的工作目录(取名字为work的文件夹),执行完该操作后,模块/浏览窗口会显示出来work的目录。选中work工作目录,在Wincvs面板的命令行中输入如下命令:cvs chacl –a none:取消用户的所有默认权限;cvs chacl –R –u cvsadmin –a all:设置管理员拥有所有的权限;cvs chown cvsadmin:改拥有者为管理员;cvs lsacl:查看用户对改文件的权限。至此设置完成。

2、普通模块的用户访问权限设置

没有能够解决

配置管理工具简介

配置管理工具简介 要说配置管理工具,就要说到配置管理,因为配置管理工具是软件配置管理过程中所使用的一些工具,要了解配置管理工具,首先就必须了解配置管理。 一、配置管理工具的定义:软件配置管理的定义有很多,现在我只说一个我 觉得定义的必要好的定义。它是:“协调软件开发使得混乱减到最小的技术叫做软件配置管理,它是一种标识、组织和控制修改的技术,目的是使错误达到最小并有效地提高生产效率。”它贯穿整个软件生命周期并应用于整个软件工程过程,是软件工程中用来管理软件开发的规范,也是CMM(软件能力成熟度模型)二级中关键过程域。软件配置管理是软件质量改进的核心环节,它贯穿于整个软件生命周期,为软件改进提供了一套解决办法与活动原则。 二、软件配置管理的目标: 软件配置管理的目标是标识变更、控制变更、确保变更、和报告变更,它主要完成以下几种任务:标识、版本管理、变更控制、配置审计和配置报告。 三、配置管理工具的主要功能: 配置管理工具作为配置管理过程中使用的工具就理所当然的具有以下功能: 1).并行开发支持:因开发和维护的原因,要求能够实现开发人员同时在同 一个软件模块上工作,同时对一个代码部分做不同的修改,即使是跨地域 分布的开发团队也能互不干扰,协同工作,而又不失去控制。 2).修订版管理:跟踪一个变更的创造者、时间和原因,从而加快问题和缺 陷的确定。 3).版本控制:能够简单、明确地重现软件系统的任何一个历史版本。 4).产品发布管理:管理、计划软件的变更,与软件的发布计划、预先定制 好的生命周期或相关的质量过程保持一致;项目经理能够随时清晰地了解 项目的状态。 5).建立管理:基于软件存储库的版本控制功能,实现建立过程自动化。 6).过程控制:贯彻实施开发规范,包括访问权限控制、开发规则的实施等。 7).变更请求管理:跟踪、管理开发过程中出现的缺陷、功能增强请求或任 务,加强沟通和协作,能够随时了解变更的状态。 8).代码共享:提供良好的存储和访问机制,开发人员可以共享各自的开发 资源。 四、常见配置管理工具简介: 配置管理工具有很多,一下我对一些常见的配置管理工具做一简单的介绍。 1.元老:CCC、SCCS、RCS 上个世纪七十年代初期加利福利亚大学的Leon Presser教授撰写了一篇论文,提出控制变更和配置的概念,之后在1975年,他成立了一家名为Soft Tool的公司,开发了自己的配置管理工具:CCC,这也是最早的配置管理工具之一。 在软件配置管理工具发展史上,继CCC之后,最具有里程碑式的是两个自由软件:Marc Rochkind 的SCCS (Source Code Control System) 和Walter Tichy 的RCS (Revision Control System),它们对配置管理工具的发展做出了重大的贡献,直到现在绝大多数配置管理工具基本上都源于它们的设计思想和体系架构。 2.中坚:Rational Clear Case

软件开发项目配置管理工具的选择

软件开发项目配置管理工具的选择 通过软件配置管理,将对软件系统中的多重版本实施系统的管理;全面记载系统开发的历史过程,包括为什么修改,谁作了修改,修改了什么;管理和追踪开发过程中危害软件质量以及影响开发周期的缺陷和变化。并对开发过程进行有效地管理和控制,完整、明确地记载开发过程中的历史变更,形成规范化的文档,不仅使日后的维护和升级得到保证,而且更重要的是,这还会保护宝贵的代码资源,积累软件财富,提高软件重用率,加快投资回报…… 每一个软件项目,无论是工程类项目,还是产品类项目,都必须经历需求分析、系统设计、编码实现、集成测试、部署、交付、维护和支持的过程。在这个过程中,将生成各种各样不同的工件,包括文档、源程序、可执行代码、支持库。更可怕的是,频繁出现的变更是不可避免的,因此面向如此庞大且不断变动的信息集,如何使其有序、高效地存放、查找和利用就成为了一个突出的问题。 针对这一问题,最早的开发人员尝试过的解决办法是通过手工来实现: 1)文档:每次修改时都另存为一个新的文件,然后通过文件名进行区分,例如"XXX 软件需求说明书V1.0,XXX软件需求说明书V1.1,XXX 软件需求说明书V2.0.",并且在文件中注明每次版本变化的内容; 2) 源代码:每次要修改时就将整个工程目录复制一份,将原来的文件夹进行改名,例如"XX 项目V1.0、XX 项目1.01、.",然后在新的目录中进行修改; 但是这种方法,不仅十分繁琐,容易出错,而且会带来大量的垃圾数据。如果是团队协同开发或者是项目规模较大时,还是会造成很大的混乱。很显然,这样简陋的方法是无法应对这一问题的。后来,有人尝试从制造工业领域引入了"配置管理"这一概念,通过不懈的研究与实践,最终形成了一套管理办法和活动原则,这也就是软件配置管理。 通过软件配置管理,将对软件系统中的多重版本实施系统的管理;全面记载系统开发的历史过程,包括为什么修改,谁作了修改,修改了什么;管理和追踪开发过程中危害软件质量以及影响开发周期的缺陷和变化。并对开发过程进行有效地管理和控制,完整、明确地记载开发过程中的历史变更,形成规范化的文档,不仅使日后的维护和升级得到保证,而且更重要的是,这还会保护宝贵的代码资源,积累软件财富,提高软件重用率,加快投资回报。 常见的配置管理工具 正如前面所述,由于软件配置管理过程十分繁杂,管理对象错综复杂,如果是采用人工的办法不仅费时费力,还容易出错,产生大量的废品。因此,引入一些自动化工具是十分有裨益的,这也是做好配置管理的必要条件。 正是因为如此,市场上出现了大量的自动化配置管理工具,这些工具的实现原理与基本机制

svn版本控制工具

第1节背景及svn简介 svn是subversion 缩写,它是一个自由、开放源码、多用户的版本控制系统, 支持通过本地或远程访问数据库和文件系统存储库。Subversion 管理着随时间改变的数据。这些数据放置在一个中央资料档案库(repository) 中。这个档案库很像一个普通的文件服务器,不过它会记住每一次文件的变动。这样你就可以把档案恢复到旧的版本,或是浏览文件的变动历史。许多人会把版本控制系統想像成某种“时光机器”。 版本控制是管理数据变更的一种技术。对于程序员来说,它已经成为不可或缺的工具,因为他们经常修改软件代码,产生部分的变更,然后第二天再取消所有的变更。想象有一群程序员同时工作的情况你就能理解,为什么需要一个良好的系统来管理可能出现的混乱。 SVN 不但提供了常见的比较、合并、标记、提交和分支功能,SVN 还增加了追踪移动和删除的能力。此外,它还支持非ASC Ⅱ文本和二进制数据、原子性提交、HTTP 访问等特性,当SVN 被广泛使用时,也需要有个管理工具能够更方便安全地维护SVN 的用户、组、权限、库等内容,协助普通用户更好地配置管理SVN,而无需都交由可能比较繁忙的系统管理员维护。而基于Web 的Subversion 管理工具将是一种非常适合的选择。SVN 可以支持windows 和Linux 两种操作系统,在两种操作系统上运行都具有稳定性和安全性。

SVN 在设计上包括了一个抽象的网络层,这意味着SVN 的版本库可以通过各种服务器进行访问,而允许程序员为客户端“版本库访问”的API 写出先关协议的插件,理论上讲,SVN 可以使用无限数量的网络协议,目前提供了有两种服务器运行方式:一种是Subversion Standalone Server。即svnserve,一个小型的独立服务器,另一种是基于Apache Http Server,即Web 服务器,它通过mod_dav_svn 模块,客户端使用WebDAV/DeltaV 协议进行访问。 SVN站在更高层次上对现在的安全产品,从系统和控制的角度进行了"有机"和"无隙"的整合。 SVN是一个安全虚拟网络系统,它将系统整体的信息安全功能均衡合理地分布在不同的子系统中,使各子系统的功能得到最大限度的发挥,子系统之间互相补充,系统整体性能大于各子系统功能之和,用均衡互补的原则解决了"木桶原理"的问题。 SVN能在跨接Internet, Intranet, Extranet间的网络所有端点实现全面的安全,而且还能提供基于企业策略的信息管理机制以充分有效地利用有限的带宽。SVN可以满足各种企业VPN的要求,通过为公司内部网络、远程和移动用户、分支机构和合作伙伴提供基于Internet的安全连接。所以,我们可以将SVN看成是VPN、防火墙、基于企业策略的信息管理软件集成在一起的Internet安全的综合解决方案。在这样一个网络系统中,所有互联网服务器端和客户端都是安全的,并有一个信息管理机制以不断地通过这个外部网络环境动态地分析及满足客户的

16软件配置管理报告

份号:001 密级: XXXXXXXX项目 软件配置管理报告 XXXX-RPB-R01.00 XXXXXXXX公司 XXXX年XX月XX日

辑要页

文档修改记录

目次 1 范围 (1) 1.1标识 (1) 1.2系统概述 (1) 1.3文档概述 (1) 2 引用文挡 (1) 3 软件配置管理情况综述 (1) 4 软件配置管理基本信息 (1) 5 专业组划分及权限分配 (1) 6 配置项记录 (1) 7 变更记录 (2) 8 基线记录 (2) 9 入库记录 (2) 10 出库记录 (2) 11 审核记录 (2) 12 备份记录 (2) 13 测量 (2) 14 主释 (2)

1 范围 1.1 标识 本条应描述本文档所适用的系统和软件的完整标识,适用时,包括其标识号、名称、缩略名、版本号和发布号。 1.2 系统概述 本条应概述本文档所适用的系统和软件的用途。它还应描述系统与软件的一般特性;概述系统开发、运行和维护的历史;标识项目的需方、用户、开发方和保障机构等;标识当前和计划的运行现场;列出其他有关文档。 1.3 文档概述 本条应概括本文档的用途和内容,并描述与其使用有关的保密性考虑。 2 引用文挡 本章应列出引用文档的编号、标题、编写单位、修订版及日期,还应标识不能通过正常采购活动得到的文档的来源。 3 软件配置管理情况综述 本章应描述软件配置管理活动进展,与软件配置管理计划的偏差;软件配置管理活动与规程是否相符;对不符合项所采取的措施;完成软件配置管理工作的工作量等。 4 软件配置管理基本信息 本章应概述软件配置管理的基本信息,包括项目负责人、各级软件配置管理机构组成人员和负责人、软件配置管理所用的资源(如计算机、软件和工具)等。 5 专业组划分及权限分配 本章应列出项目专业组的划分、各专业组的成员以及各成员的权限分配,如专业组可分为项目负责人、开发组、测试组、质量保证组、配置管理组等,权限可分为读出、增加、替换、删除等。 6 配置项记录 本章所列出项目的所有配置项,包括配置项名称、配置项最后发布日期、配置项控制力度(控制力度可分为基线管理、非基线管理(受到管理和控制))、配置项版本变更历史、配置项变更累计次数等内容。

海湾配置管理工具的使用

火灾自动报警系统是在保护对象发生火灾的情况下自动探测、显示发出火灾警报的装置。它广泛应用于现代化工厂、物资仓库、高层建筑、计算中心等建筑物内,对保证人民的生命和财产安全起着巨大作用。 火灾自动报警要经历安装、接线、调试、验收等诸多环节,其中调试是其中最重要的一个环节之一。说起调试,每个火灾自动报警系统都有其特有的调试软件,而每个厂家的调试软件只有其相关的调试人员才会接触到,相对于普通人来说也是比较神秘的,下面国产火灾报警品牌巨头一海湾的进行揭秘。 首先打开海湾调试软件工具,屏幕会出现输入密码界面 输入密码后进入GstCfg配置管理工具界面,界面有标题栏、工具栏、状态区域和编辑区域组成。

WRIVJ.A 右击状态区域内“控制器”可以添加控制器操作,GstCfg配置管理工具可添加的控制器有GST20C火灾报警控制器、GST500/5000 火灾报警控制器、GST900C火灾报警控制器、DH9000电气火灾控制器、以及KR9000可燃气体报警控制器。 控制器添加界面可以对控制器的名称,是否联网、以及新老国标等基本属性进行选择。

控制器添加完成后进入如下界面,在这了我们添加一个新国标地址号是01的GST500C型火灾报警控制器 欝E.H k^ITEHlJ-A A EW4U眠皿活冋1SB 畑:fi ------------------- ■ j ■* 可以在左侧框内的GST5000C控制器右击选择添加回路,选择回路数量进行添加。添加好的界面如下

图中右侧显示的就是设备定义的界面, 在这里可以完成对所有设 备定义数据的填写。最左边的一列是设备的二次码, 选中右击二次码 可以对其进行批量修改。 ML 士 HS-ti p -yi | mmv ■■ 離 ?皿心卸 Et? ■F ■?; *g ■ Mimi I q ? mum ? 卜 ii 1 卫 L J Ml?]i | iSH> M G . 口亠■史曲 ■ :石「 '| E P L \ b □ 1 B —帛?P L ?吐皿 Q fl 4 HKOt 阿沁0 □ ■ i 沁〈亍6 * 4 * V M IO? 1 t .:.?■:::? >Q 4 | 1 i ?l?St 1 I I 0W"*E 0 L j 0 $ 川1 otltlt D L Qb”利1 ? 上理_; M |?|| fn- AhB D u 51- PS.m 1 h 一 ^ b 白 會 nsn 0?i-5HE 0 £ a>*3 Rfl J ~0 4 "t Al M IMF t 曲祐i b 1 Q V [| (^ICM OCMH 0 k 1 H 「 1 口*飓6 I 口 4 if 1 W 1 wi?ir CW4HL D ._"L g fi 曾 'P ' wwii 1 "T "?■ #£ 厂 t 1 6 i i ' il DMAII D C n> A949I □ ;M bMtt i ? i> *!?■? 1 fi ;n t awt-^'S n U S *9 J 口 4 HUtil X 蘇Q k 汁”枕 0 I ;裁?1?2f ' t gMt 0 L as 1 4 i 31 i i g?p-M Q . k "■却捆 n ii ■ i 亦a 沁"厂 k H ■■盟耐 Q 4 |T ?J0? & MHK P 匚岭彗r.g 1 Q I * NIKI £M?E 0 =H 联1 I 4 i£ —慣呻一 MMNE 6 I ? * . 1

软件版本管理规范标准[详]

软件版本管理规 第一章目的 本规详细规定软件项目版本管理的对象、存储目录、分支、权限、维护等容,使软件项目版本管理流程化并规化,确保在系统开发和实施过程中项目的完整性和一致性。 1.第二章适用围 所有系统开发及实施项目的软件项目都应进行版本管理。项目中所有正式文档和代码都应纳入配置库(可使用工具建立配置库,本文所述使用的是SVN)进行版本管理。 2.第三章职责 配置库管理员:负责配置库的日常维护和管理;监督开发及测试部门及时提交版本管理对象(即配置项)。 此岗位可由开发或测试人员兼任。 3.第四章容 4.1. 版本管理对象 包括但不限于: 项目总体计划 可行性研究报告 开发计划 需求说明书 需求设计原型 设计说明书 系统开发变更申请单 系统管理手册 用户操作手册 培训计划 培训记录 源程序 支持系统运行的配置文件 存储过程脚本 测试计划 测试用例 测试脚本 测试报告 上线计划

上线申请 版本维护日志 4.2. 配置库的目录结构 每个项目在配置库中应拥有唯一的项目名称。配置库目录结构与项目部的目录结构建议按下列格式创建。 配置库目录结构规划: ┠tags(发布) ┃├v1.0.0_T1_2016909 ┃├v1.0.0.33899_T1_20161009 ┃├v1.0.0_R1_20161109 ┃├v1.1.0_T1_20170109 ┃└v1.1.0_R1_20170209 ┠trunk(主版本) ┃└projectA ┃├src ┃├MY_MOOC ┃├doc ┃├tool ┃├。。。 ┖branches(分支) ├SY_ABC ├TJ_ABC ├WH_MOOC 其中,项目部的目录结构: |–projectA |–src (保存该项目的源程序) |–doc (保存项目相关文档) |–000.项目管理(保存项目过程管理相关文档) |–010.项目计划(保存项目计划相关文档) |–020.项目需求(保存项目需求相关文档) |–030.系统设计(保存项目设计相关文档) |–030.系统测试(保存项目代码测试相关文档) |–040.系统实施(保存项目部署实施相关文档) |–050.系统运维(保存项目运维文档,包括培训、用户手册等) |–060.技术资料(保存项目技术文档,包括第三方技术资料等)

软件配置管理计划示例

软件配置管理计划示例 作者:赵文锋计划名CADCSC软件配置管理计划 项目名中国控制系统CAD工程化软件系统 项目委托单位 代表签名年月日 项目承办单位 代表签名年月日 1 引言 1.1 目的 本计划的目的在于对所开发的CADCSC软件规定各种必要的配置管理条款,以保证所交付的CADCSC软件能够满足项目委托书中规定的各种原则需求,能够满足本项目总体组制定的且经领导小组批准的软件系统需求规格说明书中规定的各项具体需求。 软件开发单位在开发本项目所属的各子系统(其中包括为本项目研制或选用的各种支持软件)时,都应该执行本计划中的有关规定,但可以根据各自的情况对本计划作适当的剪裁,以满足特定的配置管理需求。剪裁后的计划必须经总体组批准。 1.2 定义 本计划中用到的一些术语的定义按GB/T 11457 和GB/T 12504。 1.3 参考资料 ◆GB/T 11457 软件工程术语 ◆GB 8566 计算机软件开发规范 ◆GB 8567 计算机软件产品开发文件编制指南 ◆GB/T 12504 计算机软件质量保证计划规范 ◆GB/T 12505 计算机软件配置管理计划规范 ◆CADCSC 软件质量保证计划 2 管理

2.1 机构 在本软件系统整个开发期间,必须成立软件配置管理小组负责配置管理工作。软件配置管理小组属项目总体组领导,由总体组代表、软件工程小组代表、项目的专职配置管理人员、项目的专职质量保证人员以及各个子系统软件配置管理人员等方面的人员组成,由总体组代表任组长。各子系统的软件配置管理人员在业务上受软件配置管理小组领导,在行政上受子系统负责人领导。软件配置管理小组和软件配置管理人员必须检查和督促本计划的实施。各子系统的软件配置管理人员有权直接向软件配置管理小组报告子项目的软件配置管理情况。各子系统的软件配置管理人员应该根据对子项目的具体要求,制订必要的规程和规定,以确保完全遵守本计划规定的所有要求。 2.2 任务 在软件工程化生产的各个阶段中,与本阶段的阶段产品有关的全部信息在软件开发库存放,与前面各个阶段的阶段产品有关的信息则在软件受控库存放。在研制与开发阶段的阶段产品的过程中,开发者和开发小组长有权对本阶段的阶段产品作必要的修改;但是如果开发者或开发小组长认为有必要个性前面有关阶段的阶段产品时,就必须通过项目的配置管理小组办理正规的审批手续。因此,软件开发库属开发这个阶段产品的开发者管理,而软件受控库由项目的配置管理小组管理。软件经过组装与系统测试后,应该送入软件产品库,如欲对其修改,必须经软件配置管理小组研究同意,然后报项目总体组组长批准。关于软件配置要进行修改时的具体审批手续,将在第条中详细规定。 2.3 职责 在软件配置管理小组中,各类人员要互相配合、分工协作,共同担负起整个项目的软件配置管理工作。其中各类人员的分工如下: A.组长是总体组代表,他对有关软件配置管理的各项工作全面负责,特别要对更改建议的审批和评审负责; B.软件工程小组组长负责监督在软件配置管理工作中认真执行软件工程规范; C.项目的专职配置管理人员检查在作配置更改时的质量保证措施; D.各子系统的配置管理人员具体负责实施各自的配置管理工作,并参与各子系统的功能配置检查和物理配置检查;

Subversion版本控制工具

Subversion SVN版本控制工具 准备工作: ·Setup-Subversion-1.6.5→服务端软件 ·TortoiseSVN-1.6.6.17493-win32-svn-1.6.6→客户端 ·subeclipse-site-1.6.5.zip→eclipse插件 在开始学习之前你必须要准备好这几个软件; 首先安装SVN的服务端Setup-Subversion-1.6.5,版本不一定要一样,只要是Subversion就可以了,可能会有些差别; ·双击安装包,出现如下界面, ·下面的步骤可以一路Next, 到此就算安装完成了,点击finish,结束安装; ·path命令其实在安装完成之后就已经自动配置好了,所以不需要你去配置了,直接打开cmd 终端,开始创建我们开发用的仓库,也就是版本控制的一个工作空间,可以这么理解;

·打开上面这个界面,我想大家都比我清楚的多了,那我们就用下面的命令创建一个仓库,svnadmin create d:\subversion 这个命令就创建了一个在d盘上的仓库,svnadmin create 命令表示创建一个新的空的版本库,后面的路径就是你版本库所在的位置;执行完命令出现如下的界面说明空的版本库已经创建好了,我们打开D盘看下是不是有一个subversion的文件夹,如果有的话,说明空库创建没问题; ·subversion这个文件夹下有如下的几个文件夹 conf 存放版本库配置文件 db 版本数据存储目录 hooks 存放版本库子目录 locks 存储库锁目录,用来跟踪库的访问者 format 存储一个整数的文件,此整数代表库层次结构版本 readme 这个就是一些简介了 ·我们必须要了解的目录是conf目录及下面的三个文件了 authz 权限配置文件,可以说是svnserve的授权文件

配置管理工具SVN

软件配置管理工具SVN配置和使用说明 战立章 2008年6月

目录 第I 条第一章SVN的安装和使用说明 (1) 1.1SVN(Subversion)简介 (1) 1.2服务器SVN(Subversion)的安装和配置 (2) 1.2.1安装指南 (3) 1.2.2服务器的设置 (3) 1.3客户端TortoiseSVN的安装和配置 (5) 1.3.1安装指南 (5) 1.3.2TortoiseSVN使用说明 (5) 第II 条参考文献 (11)

第I 条第一章SVN的安装和使用说明 1.1SVN(Subversion)简介 在开源领域,并行版本控制(CVS)一直是版本控制的选择。CVS(Concurrent Versions System)本身是一个自由的软件,它对用户的非限制性和对网络操作的支持—可以允许大量的分散在不同地域的程序员共享他们的工作(特性)成果,非常符合开源软件领域合作的精神。但是像许多其他工具一样,伴随着软件技术的革新,CVS开始露出了衰老的痕迹。所以,设计者在继承CVS优秀特性的基础上设计了Subversion,并把它作为CVS新的继承者。与CVS类似,程序员依然可以使用Subversion构建一个开源软件系统的版本控制过程,但设计者在设计Subversion过程中,努力弥补了CVS的一些明显的缺陷。下面将通过与CVS对比,简单的介绍Subversion为版本控制领域带来的一些新的特性。 1.版本化的目录 CVS只记录单个文件的历史,但是Subversion实现了一个可以跟踪目录树更改的虚拟版本化文件系统,记录文件和目录的所有版本。 2.真实的版本历史 CVS只记录单个文件的历史,所以CVS对那些可能发生在文件上,但会影响所在目录内容的操作(CVS并不跟踪记录目录的变更,见特性1说明)并不支持。因此,例如,复制和重命名,这些可能改变工作目录内容的操作CVS并不支持。而且在CVS中,如果一个文件搬到另一个地方或者改名,版本号将重新编。同时CVS也不支持在工作目录下用一个内容完全不同的文件来覆盖目录下的同名文件而不继承原来文件的版本历史。而在Subversion中,可以对工作目录下的文件或者目录进行拷贝和改名操作,还可以进行添加和删除操作,而且所有的新加的文件都从一个新的、干净的版本开始。 3.原子提交 在Subversion中,一系列的修改要么全部提交到版本库,要么一个也不提交,这样可以帮助用户构建一个提交修改的逻辑块,防止部分修改添加到版本库。 4.版本化的元数据 在Subversion版本控制系统中,每一个文件或目录都有自己一套完整的属性键和它们的值,可以建立并存储任何键/值对,并且属性是随着时间流逝逐渐纳入版本控制的。

软件配置管理规范流程模板

软件配置管理规范 流程 1 概述 1.1 目的 本文档主要目的在于规范项目配置管理活动, 确保配置项正确地唯一标识而且易于存取, 保证基线配置项的更改受控, 明确基线状态, 在整个软件生命周期中建立和维护项目产品的完整性和可追溯性。 1.2 适用范围本文档适用于不同类别的软件产品和软件项目开发工程的配置管理活动, 针对项目不同在流程上作适当的删减。配置管理可采用各种工具及手工办法, 本文件以CVS( 并行版本系统) 配置管理工具为例, 规定公司的配置管理办法, 使用其它工具时也可对应本文件

的要求参照执行。 1.3 术语和缩略语 1.3.1 软件配置管理( Software Configuration Management, SCM) 软件配置管理是对软件修改进行标识、组织和控制的技术, 用来协调和控制整个过程。是经过技术或行政手段对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。配置管理的目标是记录软件产品的演化过程, 确保软件开发者在软件生命周期中各个阶段都能得到精确的不同版本的产品配置。 1.3.2 配置项( Configuration Item, CI) 凡是纳入配置管理范畴的工 作成果统称为配置项, 配置项逻辑上组成软件系统的各组成部分, 一般是能够单独进行设计、实施和测试的。 每个配置项的主要属性有: 名称、标签、文件状态、版本、作者、日期等。所有配置项都被保存在配置库里, 确保不会混淆、丢失。配置项及其历史记录反映了软件的演化过程。 1.3.3 基线( Baseline) 在配置管理系统中, 基线就是一个配置项或一组配置项在其生命周期的不同时间点上经过正式评审而进入正式受控的一种状态这些配置项构成了一个相对稳定的逻辑实体, 而这个过程被称为基线化”。每一个基线都是其下一步开发的出发点和参考点。基线确定了元素( 配置项) 的一个版本, 且只确定一个版本。一般情况下, 基线一般在指定的里程碑处创立, 并与项目中的里程碑保持同步。每个基线都将接受配置管理的严格控制, 基线中的配置项被冻结”了, 不能再

软件版本管理规范标准

软件版本管理规 V1.0.0 文档版本变更记录:

目录 前言 (3) 1 围 (4) 2 术语和定义 (4) 2.1 软件 (4) 2.2 产品软件 (4) 2.3 演示软件 (4) 3 软件版本命名规则 (4) 3.1 软件版本命名组成 (4) 3.2 产品软件版本命名 (4) 3.3 演示软件版本命名 (5) 3.4 正式版本号的升级规则 (6) 3.4.1 软件版本升级规则 (6) 3.4.2 演示版本升级规则 (6) 3.5 版本的安装文件命名规则及存放路径 (6) 4 软件版本发布流程 (7) 5 管理条例 (7) 6 附录 (7)

前言 为规部门产品软件版本的管理与控制,保证产品版本的有效与质量,制定本标准。本标准由移动金融事业部拟制。 本标准于2015年6月首次发布。

软件版本管理规定 1围 本标准规定了移动银行事业部产品软件版本的控制与管理。 本标准适用于移动银行事业部产品软件版本的控制与管理。 2术语和定义 下列定义适用于本标准。 2.1软件 指与产品相关的所有软件,可以分为产品软件和演示软件。 2.2产品软件 已签订合同,有明确交付日期的产品。 2.3演示软件 处于研发阶段,并未正式投入生产的应用。 3软件版本命名规则 3.1软件版本命名组成 产品的正式软件版本命名由四部分组成。第一部分为主版本号,第二部分为次版本号,第三部分为修订版本号,第四部分为日期版本号。 产品的演示版本命名由四部分组成。第一部分为主版本号,第二部分为次版本号,第三部分为修订版本号,第四部分为日期版本号。 3.2产品软件版本命名 产品软件版本的命名规则如下所示:

软件配置管理工具+Vss+60实用指南

软件配置管理工具Vss6.0实用指南 一、版本管理的必要性 如果说70年代的软件危机导致了软件工程思想的诞生和理论体系的发展,那么80~90年代尤其是90年代软件产业的迅猛发展导致了另一种新思想的产生和实现,这就是软件的版本管理。 只要参加过软件开发的人都清楚,现在的软件项目完全由一个人来完成是难以想象而且也是不可能的,通常是有一个研发小组来共同分析、设计、编码和维护,并有专门的测试小组对已完成编码调试的软件进行全面的测试。在软件开发这个庞大而复杂的过程中,需要涉及到各个方面的人员,信息的交流反馈不仅仅是在研发小组的成员之间及各个研发小组之间,还存在于客户和研发者之间。所有的这些交流反馈意见信息都有可能导致对软件的修改,小的可能只是对某个源文件中的某个变量的定义改动,大到重新设计程序模块甚至可能是整个需求分析变动。在这个工程中,由于软件开发所固有的特征,可能会形成众多的软件版本,而且我们并不能保证不出现错误的修改,而这样的一个困难局面却又非常现实地摆在项目开发管理者的面前,他/她该如何有效地解决这些问题,具体地说就是如下一些问题: 1.怎样对研发项目进行整体管理; 2.项目开发小组的成员之间如何以一种有效的机制进行协调; 3.如何进行对小组成员各自承担的子项目的统一管理; 4.如何对研发小组各成员所作的修改进行统一汇总; 5.如何保留修改的轨迹,以便撤销错误的改动; 6.对在研发过程中形成的软件的各个版本如何进行标识,管理及差异识辨等等。 一个非常直接的反应,我们必须要引进一种管理机制,一个版本管理机制,而且是广义上的版本管理,它不仅需要对源代码的版本进行管理,而且还要对整个项目进行管理。以往的那种被誉为具有良好编程风格的做法,诸如在对他人的源程序进行修改时注释修改原因,修改人和日期,如果是多个成员同时进行了修改,那么需要进行及时的人工的差异比较和综合以便形成一个统一的新版本。这种做法在当前的大型软件的开发中已经越来越没有空间了,可以说是一种以小作坊的形式来面对软件的社会化大生产,再也不可能行得通了。 其实,版本管理的思想很早就存在于软件开发者的头脑之中,只是以往的认识没有现在人们所意识到的那样迫切。UNIX 的程序开发系统较早就提供了能够进行开发小组中源代码版本管理的工具,现在的Linux更是提供功能强大的能够跨平台的版本管理器,国外公司的基于Windows的版本管理器也已经有了比较成熟的产品,国内的研究单位如北京大学计算机系CASE实验室也在致力于这方面的工作。在众多的成熟产品和试验产品中,这里只将对使用比较广泛,有较大用户前景且又能较易获得的版本管理器产品Microsoft公司的Visual SourceSafe6.0进行详细的介绍,针对普通的研发小组的解决方案,及具体的实现。 二、Visual SourceSafe6.0(VSS6.0)简介 VSS6.0现在是作为Microsoft Visual Studio6.0这个开发产品家族的一员,如Visual C++6.0和Visual J++6.0一样。 1.VSS的简单工作原理 Microsoft的VSS6.0解决了软件开发小组长期所面临的版本管理问题,它可能有效地帮助项目开发组的负责人对项目程序进行管理,将所有的项目源文件(包括各种文件类型)以特有的方式存入数据库。开发组的成员不能对该数据库中的

几个版本控制软件的比较

几个版本控制软件的比较 https://www.wendangku.net/doc/e09746586.html,/bbs/view6-6090-1.htm 一、Visual Source Safe(简称VSS) VSS是美国微软公司的产品,目前常用的版本为6.0版。VSS是配置管理的一种很好的入门级的工具。 易学易用是VSS的强项,VSS采用标准的windows操作界面,只要对微软的产品熟悉,就能很快上手。VSS的安装和配置非常简单,对于该产品,不需要外部的培训(可以为公司省去一笔不菲的费用)。只要参考微软完备的随机文档,就可以很快的用到实际的工程当中。 VSS的配置管理的功能比较基本,提供文件的版本跟踪功能,对于build和基线的管理,VSS的打标签的功能可以提供支持。VSS提供share(共享)、branch(分支)和合并(merge)的功能,对于团队的开发进行支持。VSS不提供对流程的管理功能,如对变更的流程进行控制。VSS不能提供对异地团队开发的支持。此外VSS只能在windows平台上运行,不能运行在其他操作系统上。VSS的安全性不高,对于VSS的用户,可以在文件夹上设置不可读,可读,可读/写,可完全控制四级权限。但由于VSS的文件夹是要完全共享给用户后,用户才能进入,所以用户对VSS的文件夹都可以删除。这一点也是VSS的一个比较大的缺点。 VSS没有采用对许可证进行收费的方式,只要安装了VSS,对用户的数目是没有限制的。因此使用VSS的费用是较低的。 由于VSS是微软的产品,可以得到稳定的技术支持。 二、Concurrent Version System(简称CVS) CVS是开发源代码的配置管理工具,其源代码和安装文件都可以免费下载。 CVS是源于unix的版本控制工具,对于CVS的安装和使用最好对unix的系统有所了解能更容易学习,CVS的服务器管理需要进行各种命令行操作。目前,CVS的客户端有winCVS的图形化界面,服务器端也有CVSNT的版本,易用性正在提高。 CVS的功能除具备VSS的功能外,还具有: 它的客户机/服务器存取方法使得开发者可以从任何因特网的接入点存取最新的代码;它的无限制的版本管理检出(checkout:注1)的模式避免了通常的因为排它检出模式而引起的人工冲突;它的客户端工具可以在绝大多数的平台上使用。同样,CVS也不提供对变更流程的自动管理功能。 一般来说,CVS的权限设置单一,通常只能通过CVSROOT/passwd, CVSROOT/readers, CVSROOT/writers文件,同时还要设置CVS REPOS的物理目录权限来完成权限设置,无法完成复杂的权限控制;但是CVS通过CVS ROOT目录下的脚本,提供了相应功能扩充的接口,不但可以完成精细的权限控制,还能完成更加个性化的功能。 CVS是开发源码软件,无需支付购买费用。 同样因为CVS是开发源码软件,没有生产厂家为其提供技术的支持。如发现问题,通常只能靠自己查找网上的资料进行解决。 三、StarTeam StarTeam是Borland公司的配置管理工具,StarTeam属于高端的工具,在易用

软件配置管理规范流程

1 概述 1.1 目的 本文档主要目的在于规范项目配置管理活动,确保配置项正确地唯一标识并且易于存取,保证基线配置项的更改受控,明确基线状态,在整个软件生命周期中建立和维护项目产品的完整性和可追溯性。 1.2 适用范围 本文档适用于不同类别的软件产品和软件项目开发工程的配置管理活动,针对项目不同在流程上作适当的删减。配置管理可采用各种工具及手工办法,本文件以CVS(并行版本系统)配置管理工具为例,规定公司的配置管理办法,使用其他工具时也可对应本文件的要求参照执行。 1.3 术语和缩略语 1.3.1 软件配置管理(Software Configuration Management,SCM) 软件配置管理是对软件修改进行标识、组织和控制的技术,用来协调和控制整个过程。是通过技术或行政手段对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。配置管理的目标是记录软件产品的演化过程,确保软件开发者在软件生命周期中各个阶段都能得到精确的不同版本的产品配置。 1.3.2 配置项(Configuration Item,CI) 凡是纳入配置管理范畴的工作成果统称为配置项,配置项逻辑上组成软件系统的各组成部分,一般是可以单独进行设计、实施和测试的。 每个配置项的主要属性有:名称、标签、文件状态、版本、作者、日期等。所有配置项都被保存在配置库里,确保不会混淆、丢失。配置项及其历史记录反映了软件的演化过程。 1.3.3 基线(Baseline) 在配置管理系统中,基线就是一个配置项或一组配置项在其生命周期的不同时间点上通过正式评审而进入正式受控的一种状态,这些配置项构成了一个相对稳定的逻辑实体,而这个过程被称为“基线化”。每一

软件版本管理规定

软件版本管理规定 文稿归稿存档编号:[KKUY-KKIO69-OTM243-OLUI129-G00I-FDQS58-

广东亿迅科技有限公司 软件版本管理办法(暂行) 第一章总则 第一条为了加强广东亿迅科技有限公司(以下简称“公司”)的软件版本管理工作,进一步细化公司配置管理规范,建立软件版本管理的规范化操作流程,保证公司软件产品质量,制定本办法。 第二条本办法适用于公司各技术部门的软件版本管理工作。 第三条本办法所称的软件版本是指公司所有面向用户发布的应用软件版本。 第四条软件版本(以下简称“版本”)管理应遵循以下原则: (一)实施版本变更应符合以下原则之一: 1.为满足客户新业务、新功能需求; 2.为满足提高业务质量、提升业务性能指标和容量扩充的需求; 3.为解决软件故障和软件稳定性、安全性、可控性问题; 4.为了提高软件可维护性。 (二)版本的集成和发布应严格按照计划执行,避免随意和频繁更新版本; (三)为保证软件质量,任何一个软件版本须通过版本测试后方可上线; (四)公司所有软件版本必须通过正式渠道发布给用户,未经审批各部门和个人不得擅自向用户发布软件版本。 第五条版本管理是保障应用软件正常运行的一个重要手段,各相关部门应认真贯彻落实,并纳入工作考核;未按本办法执行从而造成版本故障影响用户正常生产的,一经发现将追究其相应责任。 第二章职责与分工

第六条版本管理实行总体质量控制,分级实施管理原则,管理工作涉及版本质量管控部门和版本集成发布部门;质量管理部是版本质量管控部门,各业务部门是版本集成发布部门。 第七条版本质量管控部门的工作职责如下: (一)负责制定与版本管理工作相关的管理办法和工作流程并组织落实; (二)负责组织版本管理相关的培训并提供技术支持; (三)负责跟踪和监督公司版本管理工作的执行情况,协调解决执行中的问题,并对版本管理的执行效果进行评估考核; (四)负责组织和实施对版本的测试验证工作; (五)负责对版本升级实施效果和版本质量进行监控和评估; (六)其它应由版本质量管控部门负责的事项。 第八条版本集成发布部门的工作职责如下: (一)负责本部门版本研发集成工作环境的建立、维护和管理; (二)负责依据版本管理工作流程,执行版本开发、集成、发布及维护的相关工作; (三)负责收集分析业务需求,制定版本计划并按计划组织实施; (四)负责跟踪版本上线后的运行情况,收集用户使用的反馈信息,改进版本质量; (五)其它应由版本集成发布部门负责的事项。 第九条版本质量管控部门设置专职版本管理工程师和测试工程师岗位,负责版本的质量管控及流程监督;版本集成发布部门应在各项目组内设置专职或兼职版本管理员,负责本项目版本集成发布的具体工作。 第三章版本管理 第十条版本管理的各项工作应按照本办法规定的流程和要求执行。版本集成发布部门可以根据本办法的要求结合项目实际情况,对工作流程进行进一步细化。

软件配置管理计划

软件配置管理计划示例 计划名国势通多媒体网络传输加速系统软件配置管理计划 项目名国势通多媒体网络传输加速系统软件 项目委托单位代表签名年月日 项目承办单位北京麦秸创想科技有限责任公司 代表签名年月日 1 引言 1.1 目的 本计划的目的在于对所开发的国势通多媒体网络传输加速系统软件规定各种必要的配置管理条款,以保证所交付的国势通多媒体网络传输加速系统软件能够满足项目委托书中规定的各种原则需求,能够满足本项目总体组制定的且经领导小组批准的软件系统需求规格说明书中规定的各项具体需求。 软件开发单位在开发本项目所属的各子系统(其中包括为本项目研制或选用的各种支持软件)时,都应该执行本计划中的有关规定,但可以根据各自的情况对本计划作适当的剪裁,以满足特定的配置管理需求。剪裁后的计划必须经总体组批准。 1.2 定义 本计划中用到的一些术语的定义按GB/T 11457 和GB/T 12504。 1.3 参考资料

◆GB/T 11457 软件工程术语 ◆GB 8566 计算机软件开发规范 ◆GB 8567 计算机软件产品开发文件编制指南 ◆GB/T 12504 计算机软件质量保证计划规范 ◆GB/T 12505 计算机软件配置管理计划规范 ◆国势通多媒体网络传输加速系统软件质量保证计划 2 管理 2.1 机构 在本软件系统整个开发期间,必须成立软件配置管理小组负责配置管理工作。软件配置管理小组属项目总体组领导,由总体组代表、软件工程小组代表、项目的专职配置管理人员、项目的专职质量保证人员以及各个子系统软件配置管理人员等方面的人员组成,由总体组代表任组长。各子系统的软件配置管理人员在业务上受软件配置管理小组领导,在行政上受子系统负责人领导。软件配置管理小组和软件配置管理人员必须检查和督促本计划的实施。各子系统的软件配置管理人员有权直接向软件配置管理小组报告子项目的软件配置管理情况。各子系统的软件配置管理人员应该根据对子项目的具体要求,制订必要的规程和规定,以确保完全遵守本计划规定的所有要求。 2.2 任务

版本控制工具使用规范.

版本控制与code review规范 目录 branch使用规则 (3 公共branch命名示例 (3 个人branch命名示例 (3 个人branch创建规则 (3 代码提交流程 (3 Windows平台文件夹方式操作与建议 (4 个人branch创建操作 (4 个人branch代码提交 (6 merge操作 (9 操作步骤1:合并branch (9 操作步骤2:解决冲突 (12 Eclipse 插件方式操作与建议 (14 Mac平台操作与建议 (21 1.采用CornerStone客户端进行SVN操作 (21 1、与服务器创建连接 (21

2、个人branch创建操作 (22 3、把服务器上个人branch 进行check out 到本地 (24 4、个人branch提交(commit操作 (25 5、merge操作 (26 2.采用终端命令提示符进行SVN操作 (28 1、将文件checkout到本地目录 (28 2、往版本库中添加新的文件 (29 3、将改动的文件提交到版本库 (29 4、加锁/解锁 (29 5、更新到某个版本 (29 6、查看文件或者目录状态 (30 7、删除文件 (31 8、查看日志 (32 9、查看文件详细信息 (32 10、比较差异 (32 11、将两个版本之间的差异合并到当前文件 (34 12、SVN 帮助 (35 13、版本库下的文件和目录列表 (35 14、创建纳入版本控制下的新目录 (36

15、恢复本地修改 (36 16、代码库URL变更 (36 17、解决冲突 (37 18、输出指定文件或URL的内容。 (37 branch使用规则 公共branch命名示例 branch-20150326-candidate 个人branch命名示例 branch-20150326-hulanlan branch-20150326-taskID 个人branch创建规则 ●开发人员基于每个开发小任务创建自己的branch, 以每天check in 自己的代码作备份。 ●基本原则是从最新代码创建branch,以方便未来的代码合并 ●原则是不直接在服务器上操作 代码提交流程 1.测试本地代码 2.整理本地代码, 申请code review 3.提交本地代码到个人branch

相关文档