2.1软件生命周期与配置管理
1.传统软件模型
软件的产生过程可以分为以下两种:线性过程与迭代过程
软件模型主要有以下两种:V字模型与螺旋模型
2.软件配置管理(SCM)和版本更替(VCS)
SCM:用于追踪和控制软件的变化
VCS:版本控制与基线的确立,一般分为以下三种
(1).本地:仓库存储于开发者本地机器,无法协作与共享
(2).集中式:仓库存储于独立的机器,支持多开发者之间的协作
(3).分布式:仓库存储于独立的机器以及每个开发者的本地机器,进一步方便协作(如Git)
3.Git的使用教学(重点)
Git的基本组成
Git可以分为本地仓库和远程仓库,而Git在本地的仓库主要又可以分为以下三部分:
(1).workspace(工作目录:本地文件系统)
(2).staging(暂存区:隔离工作仓库和目录,增强操作的灵活性)
(3).local repository(本地仓库)
Git的基本操作
1.获得项目的Git仓库
(1).到此项目所在的目录,执行git init(也就是初始化仓库)
(2).利用git add 命令进行跟踪提交,例如:git add --.c(跟踪一个.c文件)
(3).通过git commit 命令提交到本地仓库,一般是:git commit -m “版本号”
注:
(1).在Git中commit文件时,只存储了发生变化的文件,不变化的文件则不存储
(2).可以利用git status命令来检查当前文件的状态
2.对远程仓库的操作
(1).添加一个远程仓库:git remote add [name] (仓库名称) [url] (具体网址)
(2).将本地仓库的数据推送到远程仓库:git push [name] [branch] (当前分支)
(3).从一个仓库或本地分支拉取并整合代码:git pull
3.分支的创建与合并
在默认情况下,我们都是在master分支下进行操作的
(1).创建并同时切换到新分支01:git checkout -b 01
(2).返回master分支:git checkout master
(3).j将master分支与01分支合并(假设此时我们在master分支上):git merge 01
(4).删除分支01:git branch -d 01
2.2软件构造的过程,系统和工具
软件构造基本可以分为以下五个过程:
(1).programming(编码)
(2).review and static analysis(代码评审)
(3).dynamic code analysis(性能分析)
(4).debugging and testing(测试与调试)
(5).refactoring(重构)