1. 配置管理
配置是什么?
能够识别产品的结构及其类型,并且以某种形式对产品结构进行存取,也能够通过一定的机制修改配置项。
好比你想买电脑,需要明确电脑的硬件配置

软件配置
- 测试用例文档,版本v1.0
- 服务器系统centos 版本7.5
- 服务端代码版本 v2.0
- ...
配置管理
- 针对每个项目进行版本控制,并且维护不同项目之间的版本关系,以便软件在开发过程中任一时间的内容都可以被追溯
1.1. 软件配置诞生
配置管理是通过对软件生命周期过程中不同的时间点上的配置信息进行标识,且对被标识的配置信息进行控制,达到保证软件完整性与可追溯性
- 随着软件开发的发展,软件管理越来越复杂

- 参与软件开发的人数增加,拷贝代码难

- 代码迭代,版本变化大,难以维护
1.2. 软件配置工具的诞生
工具都是为了能够更方便的工作,软件配置工具的作用是:
- 维护文件仓库
- 创建与存放文件的多个版本
- 标识文件版本信息
- 还原文件历史版本

1.3. 配置管理or图书管理
若是说配置管理小伙伴可能会懵逼,那么图书管理呢?
图书管理
图书馆是一个集中存放书籍,各类书籍的地方,可能有青春、文学、艺术、体育、法律、古籍、计算机等等。

1.4. 软件配置项
软件配置项(SCI):软件生存周期各个阶段活动的产物经审批后即可称之为软件配置项。
一般认为:软件生存周期各个阶段活动的产物经审批后即可称之为软件配置项。 软件配置项包括: ①与合同、过程、计划和产品有关的文档和资料; ②源代码、目标代码和可执行代码; ③相关产品,包括软件工具、库内的可重用软件、外购软件及顾客提供的软件等。
合同类文档
用户需求书、任务计划书、合同、用户意向书
计划类文档
项目计划手册、项目流程手册、配置管理手册
工程文档
需求规格手册、测试计划、测试用例
程序代码
软件开发代码、数据库
工具
支撑软件开发,软件测试、软件运维的第三方工具
用户文档
软件使用手册
运行环境
软件安装指南、运行环境手册
1.5. 版本
软件版本:包含两种不同含义
(1)为满足不同用户的不同使用要求,如适用于不同运行环境或不同平台的系列产品。
(2)软件产品投入使用以后,经过一段时间运行提出了变更的要求,需要做较大的修正或纠错,增强功能或提高性能。
(3)版本以版本号进行标识。
版本记录主要包含
- 版本标识号
- 发布类型
- 版本描述

1.6. 配置管理之版本控制
我们平日里管理电脑上的文件,可能大多都是拷贝,备份,在备份的文档名或目录名上添加编辑的日期。
但是,每次编辑文档都要事先复制,这样非常麻烦,也很容易出错。

再加上,如果像上图那样毫无命名规则的话,就无法区分哪一个文档是最新的了。
而且,如果是共享文件的话,应该加上编辑者的名字。
还有,文档名字没有体现修改内容。
另外,如果两个人同时编辑某个共享文件,先进行编辑的人所做的修改内容会被覆盖,相信大家都有这样的经历。

版本控制系统的出现就是为了解决这些问题的