文章目录
前言
一、持续集成
1、软件开发生命周期
软件开发生命周期SDLC,集合了计划,开发(代码落地)、测试(功能测试/压力测试/单元测试/发布上线----->收集用户反馈---->升级

2、软件开发瀑布模型
软件开发瀑布模型(传统)------>流水线工作------>需求分析-----设计----实现-----测试----发布----收集反馈
优点
优点:速度快、简单易用,只关注前阶段,不关注后阶段,为项目提供了按阶段划分的检查节点
缺点
每一个节点划分固定,无法返回/耽误时间/浪费资源/每个阶段产生大量文档,极大的增加了工作量/
等到产品最后一步结束才能可观结果,增加开发风险/不适应用户需求的变化
二、敏捷开发
1、迭代开发
传统的开发采用一个大周期进行开发,大开发,迭代开发时将开发过程拆成多个小周期,即一次’大开发’变成多次’小开’
拆分成一步一步
案例
SpaceX 公司想造一个大推力火箭,将人类送到火星。但是,它不是一开始就造大火箭,而是先造一个最简陋的小火箭 Falcon 1。结果,第一次发射就爆炸了,直到第四次发射,才成功进入轨道。然后,开发了中型火箭 Falcon 9,九年中发射了70次。最后,才开发 Falcon 重型火箭。如果SpaceX 不采用迭代开发,它可能直到现在还无法上天
2、增量开发
中小型公司,目的控制成本
软件的每个版本,都会新增一个用户可以感知的完整功能。也就是说,按照新增功能来划分迭代。
案例
房产公司开发一个10栋楼的小区。如果采用增量开发的模式,该公司第一个迭代就是交付一 号楼,第二个迭代交付二号楼 每个迭代都是完成一栋完整的楼。而不是第一个迭代挖好10栋楼的地基,第二个迭代建好每栋楼的骨架,第三个迭代架设屋顶.
3、敏捷开发
将软件开发成多个迭代,每次迭代都是完整的软件开发周期
核心思想-------》<解耦>
优势
优势:早期交付---->降低成本---->降低风险---->及时了解市场需求,降低产品不适用风险
三、什么是持续集成
频繁地将代码集成到主干中,持续集成为目的,让产品可以快速迭代,保证质量
到达主干之前,必须自动化测试,只要一个测试用例失败,不可集成(规避成本和时间)
团队可以快速的从一个功能到另一个功能
流程
提交—测试[第一轮]—构建—测试[第二轮]—部署—回滚

四、CI的组成要素
组成要素
1、一个自动的构建过程, 从检测代码,编译,测试,结果、测试全部都是自动完成
2、一个代码存储库,需要版本控制软件来保障代码的可维护性,一般使用SVN/GIT
3、一般使用码云Gitee国内的github/一般搭建私有仓库/
4、一个持续集成服务器,jenkins完成
5、开发------SVN/GIT-----ci/cd编译、构建、部署------测试环境-----运维(迁移【数据迁移】按亿为单位 以PB级别)生产环境
优势
降低风险、修复代价少
健康的检测
减少重复工作
提供部署单元包便于测试工程师单元测试
提高质量

五、Jenkins
在这里插入代码片是一款流行的开源持续集成工具,广泛用于项目开发,具有自动化构建,测试和部署等功能
1、开源java语言开发持续集成工具、支持持续集成,持续部署------>JDK
2、易于安装部署配置:Yum安装,下载项目包----<war包>----/通过docker容器快速安装部署。方便web界面部署管理
3、RSS/E-mail通过RSS发布构建完成时通过e-mail通知,生成JUNIT/TestNG测试(升级后邮件配置不同,需重视)
4、分布式构建:搭建jenkins集群
5、文件识别:jenkins跟踪哪些构建生成哪些jar
6、丰富的插件支持:git/svn/maven/docker
六、搭建java环境
编译器1.8jdk环境
第一步
第二步
第三步
第四步
第五步
第六步:点击C盘
第七步:点击programfilm
第八步:点击java
第九步:点击jdk1.8.0_152
第十步:点击bin
第十一步:点击javac
第十二步:此电脑属性
第十三步:高级设置
第十四步:环境变量
第十五步:系统变量
第十六步:\bin\地址(此地址为:C盘-->javac所有地址)
ideaIU
第一步:安装
第二步:换路径
第三步:点击64/java/add
第四步:点击安装
第五步:自动生成到指定路径中
第六步:稍后重启
第七步:完成
第八步:进入软件/bin中
第九步:将jetbrains-agent复制进/bin中
第十步:在/bin中编辑idea64.exe.vmoptions加入以下内容
-javaagent:G:\IntelliJ IDEA 2019.3.1\bin\jetbrains-agent.jar
第十一步:复制激活码
第十二步:打开intellij IDEA应用程序将复制的激活码粘贴进去即可
第十三步:打开intellij IDEA
第十四步:create New project
第十五步:菜单选中Maven
第十六步;右侧界面1、将Creat from archetype打上勾。2、下面选择以webapp结尾的选项
第十七步:修改Name后,文件的路径可以放在指定的盘中
七、Gitlab代码托管服务器安装
1、什么是Gitlab
Gitlab官网:https://about gitlab.com
gitlab是一个用于仓库管理系统的开源项目,使用gitlab作为代码管理工具,并在此之上搭建起来的web服务
Gitlab是可以部署到自己的服务器上,数据库等一切信息都掌握在自己手上,适合团队内部协作开发
2、安装Gitlab
Gitlab安装
代码一
第一步
yum install -y policycoreutils openssh-server openssh-client postfix

代码二
第二步
systemctl enable sshd && sudo systemctl start sshd

代码三
第三步
systemctl enable postfix && systemctl start postfix

代码四【如果关闭防火墙,就不需要做此配置】
第四步
firewall-cmd --add-service=ssh --permanent
firewall-cmd --add-service=http --permanent
firewall-cmd --reload

代码五
下载gitlab包,并且安装
在线下载安装包
wget
https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/gitlab-ce-12.4.2-ce.0.el6.x86_64.rpm
安装:
第五步
rpm -ivh gitlab-ce-12.4.2-ce.0.el6.x86_64.rpm

代码六
修改gitlab配置
vim /etc/gitlab/gitlab.rb
第六步
vim /etc/gitlab/gitlab.rb
23 external_url 'http://192.168.199.10:82'
1112 nginx['listen_port']=82


代码七
重载配置
gitlab-ctl reconfigure

代码八
启动gitlab
gitlab-ctl restart


代码九
把端口添加到防火墙
firewall-cmd --zone=public --add-port=82/tcp --permanent
firewall-cmd --reload

web页面
第一步

第二步


一、添加组/create a group
第一步:create a group
第二步:写入团队名称
第三步:选择可见范围
private---私人
internal---内部
public---公开
第四步:点击创建/create group按钮


二、添加用户/add people
第一步 填写个人信息
第二步 创建用户/add people
第三步 修改 edit --目的修改密码
第四步 修改密码
第五步 提交修改信息






三、将用户添加入组中
第一步 点击group
第二步 点击群组名称
第三步 点击member
第四步 为群组添加成员
第五步 为成员赋予角色
Guest:可以创建issue、发表评论,不能读写版本库
Reporter:可以克隆代码,不能提交,QA、PM 可以赋予这个权限
Developer:可以克隆代码、开发、提交、push,普通开发可以赋予这个权限
Maintainer:可以创建项目、添加tag、保护分支、添加项目成员、编辑项目,核心开发可以赋予这个 权限
Owner:可以设置项目访问权限 - Visibility Level、删除项目、迁移项目、管理组成员,开发组组长可以赋予这个权限
第六步 点击确认
点击group


点击members

点击owner
点击add to group

四、创建项目
第一步 点击new project
第二步 填入项目名称
第三步 点击确认,项目创建完成
点击new project

对接形式

本文介绍了软件开发生命周期和瀑布模型,强调了敏捷开发中的迭代、增量开发及其优势。详细阐述了持续集成的概念,重点讨论了Jenkins作为持续集成工具的角色,以及如何搭建Java环境和GitLab代码托管服务器。此外,还提供了GitLab的安装步骤,展示了如何在团队协作中使用GitLab进行项目管理和代码管理。





1494

被折叠的 条评论
为什么被折叠?



