1.持续集成介绍

1.1 持续集成概念

    持续集成(Continuous Integration,简称CI)是一种软件开发实践,即团队开发成员经常集成他们的工作, 通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。
持续集成的目的:让产品可以快速迭代,同时还能保持高质量

Image From 05-持续集成-w.png

1.2 持续集成的好处

# 快速发现错误 
    每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易 
# 防止分支大幅偏离主干 
    如果不是经常集成,主干又在不断更新,会导致以后集成的难度变大,甚至难以集成 
# 更快速的发布更新 
    持续集成可以帮助团队更快速、更积极的发布程序和更新程序。在发布时可自动完成大量重复的工作、节省人力

Git与代码托管平台

1 Git

Git是目前世界上最先进的分布式版本控制系统
Git安装:

(1).下载安装包,下载地址:https://git-scm.com/downloads
(2).双击运行,然后按默认选项安装即可
(3).校验是否安装成功。打开命令行窗口,输入命令: git --version ,看到git版本信息表示已安装成功

2 代码托管平台

安装完成后,还需要最后一步设置,在命令行输入:
git config --global user.email "email@example.com"
git config --global user.name "Your Name”

(1).Github
是一个基于git实现在线代码托管的仓库,向互联网开放,企业版要收钱
国外的,受网络环境影响较大
官网:https://github.com/

(2).Gitee
即码云,是开源中国免费提供(企业版收费)
国内的,受网络环境影响较小
官网:https://gitee.com/

3 使用Gitee

(1).Gitee介绍

  • 码云Gitee是开源中国开发的一款基于Git的代码托管平台,能够实现代码托管、项目管理、协作开发等
  • 目前是国内最大的代码系统,目前已有超过 500 万的开发者选择码云
  • Gitee和GitHub的作用和性质是类似的,Gitee优势是速度快

(2).在Gitee中创建仓库

1).点击按钮创建一个仓库

image-20210617223251866.png

2).编辑仓库信息, 点击创建

image-20210617223420015.png

image-20210617223527167.png

(3).获取克隆地址并拉取代码

Image From 05-持续集成-w-3940599.png

git clone 仓库地址

4.Git命令

# 1.本地仓库
(1).初始化本地仓库: git init(***)
(2).查看状态: git status(*****)
(3).提交至暂存区: git add filename|.(*****)
        - filename: 文件名
        - .: 所有文件
(4).提交至仓库: git commit -m 'message'(*****)
(5).创建分支: git branch dev(****)
(6).切换分支: git checkout dev(****)
# 2.远程操作
    向GitHub提交代码, 首先需要解决的就是要有个GitHub账号, 并且可以连上GitHub, 获得授权.接下来看一下这些操作.
(1).获取远程仓库授权(GitHub+Gitee)
(3).克隆项目并提交代码
(4).回滚分为以下几种情况:
    1).提交至暂存区但为提交至本地仓库(add了, 没commit)

    2).提交至本地仓库但未推至远程仓库

    3).推送至远程仓库实现回滚

3.Jenkins

3.1 Jenkins介绍

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作, 旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

3.2 Jenkins环境搭建

(1).JDK安装:

(2).安装Jenkins

1).下载最新的版本war包,官网:https://jenkins.io/

2).进入war包所在目录,命运行运行如下命令:

java -jar jenkins.war 

3).在浏览器中访问http://localhost:8080/

01.png

4).进入启动页后,这里需要一个密码进行验证,密码所在的位置会在页面上标有,直接打开这个文件就可以看到密码

02.png

5).密码输入后,点击继续。此时会提示是否安装插件,我们选择第一个,安装建议的插件

03.png

6).等待插件安装完成

04.png

7).安装完成后,会提示设置用户名和密码,进行后期登录使用

05.png

8).配置完成后,提示准备就绪

06.png

9).点击按钮,即可进入首页

07.png

3.3 安装HTML Publisher插件

(1).进入首页,选择'Jenkins'后面的小图标->'系统管理'->'管理插件’

08.png

(2).输入搜索关键字,选择要安装的插件,点击‘Install without restart’安装

09.png

(3).查看安装进度

10.png

3.4 系统设置

(1).选择'Jenkins'->'系统管理'->'系统设置’

11.png

3.5 解决控制台乱码问题

如果在控制台中输出中文字符时出现乱码,则可通过以下操作来设置字符编码

(1).打开系统管理->系统设置,在'全局属性'添加'环境变量'。LANG=zh_CN.UTF-8和JAVA_TOOL_OPTIONS=- Dfile.encoding=UTF8

15.png

3.6 HTML报告样式无法显示

    在部署Jenkins持续集成的过程中经常会用到HTML Publisher插件来显示测试报告。  为了测试报告样式的美观以及易读,测试报告中经常会搭配CSS和JS实现自定义的样式或动画效果。 
# 问题 
    Jenkins中在访问有自定义样式或动画效果的测试报告时,会出现样式无法正常显示的问题。

# 原因 
    Jenkins为了避免受到恶意HTML/JS文件的攻击,会默认将安全策略CSP设置为: 
sandbox; default-src 'none'; img-src 'self'; style-src 'self'; 
    在此配置下,只允许加载: 
    Jenkins服务器上托管的CSS文件
    Jenkins服务器上托管的图片文件 
    其他形式的内容都会被禁止:JavaScript、plugins (object/embed)、HTML中的内联样式表和引用的外站CSS文 件、HTML中的内联图片和外站引用的图片文件等等 

3.7 邮件测试报告模板

<!DOCTYPE html> 
<html> 
    <head> 
    <meta charset="UTF-8"> 
    <title>构建日志</title> 
    </head> 
    <body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0"> 
        <div> 
            <h2>项目信息</h2> 
            <ul> 
                <li>项目名称:project_name</li> 
                <li>详细测试报告:
                    <a href="#"></a></li> <li>触发原因:
                </li> 
                <li>
                    项目Url:<a href="${PROJECT_URL}"></a>
                </li> 
            </ul> 
            <hr/> 
            <h2>构建日志</h2> 
            <div></div> 
            <hr/> 
        </div> 
    </body> 
</html> 
最后修改:2021 年 08 月 26 日
如果觉得我的文章对你有用,请随意赞赏