持续集成工具解决方案教程(面向零基础初学者)
🚀 开篇:什么是持续集成?

你有没有过这样的经历?自己写了一个小项目,信心满满地准备分享给朋友或上线使用,结果一运行就报错、功能出问题,甚至代码版本都搞乱了?这时候你会想:“要是有一个系统能自动帮我检查代码质量、运行测试、打包发布就好了。”
这个想法就是持续集成(Continuous Integration,简称 CI)的核心理念。
💡 什么是持续集成?
简单来说:
持续集成是一种开发流程,它让开发者每次提交新代码后,系统都能自动检测代码是否正确,比如是否能编译通过、测试用例是否全过、是否存在潜在错误等。
🛠️ 它有什么用?
- 自动执行测试,避免手动检查
- 提早发现问题(例如代码冲突、语法错误)
- 减少人为操作失误
- 支持多人协作开发而不混乱
🧰 常见的持续集成工具
- Jenkins(历史悠久,适合传统企业)
- GitHub Actions(适合GitHub用户)
- GitLab CI/CD(集成在GitLab中)
- CircleCI / Travis CI(轻量级在线CI)
✅ 本教程我们将使用 GitHub Actions 来作为教学工具,因为:
- 它直接集成在 GitHub 上,无需额外安装服务器
- 配置简单,适合新手入门
- 不需要支付费用即可开始实践
🔧 环境准备:搭建你的第一台“持续集成机器”


我们不需要真的买一台服务器,也不用装复杂的软件。只需要准备好以下三样东西:
1. 注册一个 GitHub 账号
- 地址:https://github.com
- 免费注册即可
2. 安装本地开发环境(用于写代码)
你需要有基本的编程环境支持。这里我们以 Python 小项目为例。
👨💻 安装步骤(Windows / macOS / Linux 通用):
安装 Python 3.x 最新版
(选择最新稳定版,安装时记得勾选 “Add to PATH”)安装 VS Code(免费的代码编辑器)
配置 VS Code 插件推荐:
- Python(微软官方插件)
- GitLens(更方便查看代码变动)
- GitHub Pull Requests and Issues(直接登录GitHub)
3. 创建一个新的 GitHub 项目仓库(Repo)
进入 GitHub 主页 → 点击右上角“+” → Create a new repository
填写项目名如 ci-demo → 初始化 README 文件 → 创建仓库
这样你就有了一个可以练习 CI 的代码仓库。
📚 核心概念讲解:理解 CI 中的关键词

虽然这些词汇听起来很专业,但我们来一个个通俗地解释清楚。
🧾 工作流(Workflow)
工作流就是一套告诉 CI 系统该怎么做的指令。
你可以把它理解为一份说明书,比如:
当代码被推送(push)到 main 分支的时候,做以下几步:
1. 下载代码
2. 安装依赖
3. 执行单元测试
4. 输出结果
这些步骤会被写在一个 .yml 文件里。
🧱 步骤(Steps)
每一个“步骤”就是一个独立的小任务。比如上面提到的:
- 下载代码
- 安装依赖
- 运行测试
这些都是一个单独的 step。
🖥️ 运行器(Runner)
运行器是执行任务的地方,类似于“电脑”。
GitHub 提供了一些默认的运行器,比如:
- ubuntu-latest(Ubuntu 系统)
- windows-latest(Windows 系统)
- macOS-latest(Mac 系统)
你可以指定你的工作流在哪种操作系统下运行。
🔄 触发器(Trigger)
触发器指的是“什么时候”运行 CI 工作流。
常见触发方式:
- 有人向仓库提交了新代码(git push)
- 创建了新的 Pull Request(PR)
- 某个特定时间点(比如每天凌晨1点)
⚙️ 实战项目:创建第一个 CI 流程


现在我们来动手实战一下!
目标:创建一个 GitHub Actions 流程,每当有人推送代码时,就自动运行 Python 单元测试。
Step 1: 写一个简单的 Python 程序
我们先做一个最简单的加法程序和对应的测试。
目录结构如下:
.
├── add.py
└── test_add.py
➕ add.py 内容:
def add(a, b):
return a + b
🧪 test_add.py 内容:
import unittest
from add import add
class TestAddFunction(unittest.TestCase):
def test_add_positive(self):
self.assertEqual(add(2, 3), 5)
def test_add_negative(self):
self.assertEqual(add(-1, 1), 0)
if __name__ == '__main__':
unittest.main()
✅ 本地测试一下:
打开终端(命令行)输入:
python -m unittest test_add.py
如果看到类似以下内容,表示测试通过:
......
----------------------------------------------------------------------
Ran 2 tests in 0.001s
OK
Step 2: 把项目上传到 GitHub
回到 GitHub 页面,在你新建的仓库中上传这两个文件。
方法有两种:
- 使用 VS Code 的 Git 功能提交并 Push 到远程
- 或者点击 “Add file” -> Upload files
Step 3: 创建 GitHub Actions 工作流
GitHub Actions 是通过 .github/workflows/ 文件夹下的 .yml 文件配置的。
我们在本地创建一个 .github/workflows/ci.yml 文件(注意路径!)
✅ .github/workflows/ci.yml 内容如下:
name: Run Python Tests
on:
push:
branches: [ "main" ]
jobs:
run-tests:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install dependencies
run: |
pip install --upgrade pip
- name: Run tests
run: |
python -m unittest test_add.py
🧪 解释一下这段 yml 配置:
| 配置项 | 含义 |
|---|---|
name: Run Python Tests |
这个工作流的名字 |
on: push... |
当有代码推送到 main 分支时触发 |
runs-on: ubuntu-latest |
使用 Ubuntu 系统运行 |
steps 下每一步都很清楚 |
依次下载代码、配置 Python、安装依赖、运行测试 |
Step 4: 提交这个 CI 配置文件到 GitHub
将 .github/workflows/ci.yml 添加到项目中,并提交 commit 和 push 到 GitHub。
📝 注意:
.github是隐藏目录,确保你在 VS Code 设置中设置了显示隐藏文件!
Step 5: 查看 CI 构建结果
刷新你的 GitHub 项目页面,点击顶部标签栏的 Actions 标签页,就会看到 CI 开始运行。
等待几秒钟后,你应该会看到绿色的✅标记,说明测试成功通过。
❓ 常见问题与解答
下面是一些新手最容易遇到的问题,以及解决方法:
Q1: 我看不到 Actions 页面怎么办?
A:请确认你的项目仓库是公开的(Public),或者你已经登录了 GitHub 账号。
Q2: 推送代码后 CI 没有运行?
A:请检查
.github/workflows/ci.yml是否放在正确的位置,且没有拼写错误。另外,确认分支名字是否一致,比如是不是 main 还是 master?
Q3: 报错说找不到文件?
A:有可能是你提交的文件名和代码中引用的不一致,比如
test_add.py写成了test_adds.py。
Q4: 跑测试失败了怎么办?
A:GitHub Actions 显示的 Build Logs(构建日志)很重要,里面会详细提示哪里出错了。
例如:
- 缺少模块可以尝试加 pip install xxx
- 测试失败要修改代码再提交
📘 学习建议:下一步怎么走?
恭喜你完成了第一个 CI 流程!以下是几个进阶方向建议:
✅ 进阶目标 1:自动化部署你的应用
下一步可以尝试让你的 CI 在测试通过后自动部署到服务器或托管平台,比如:
- 部署到 Heroku
- 发布到 GitHub Pages
- 构建 Docker 镜像并推送到 Docker Hub
✅ 进阶目标 2:学习多阶段流水线(Pipeline)
当前我们只有一个阶段,未来可以尝试:
- 第一阶段:运行测试
- 第二阶段:生成文档
- 第三阶段:打包发布
- 第四阶段:发送通知(邮件、Slack)
✅ 进阶目标 3:换其他 CI 工具试一下
尝试换个 CI 平台练习,比如 GitLab CI 或 Jenkins,你会发现不同平台之间的异同,从而理解 CI 的本质。
✅ 推荐学习资源
- GitHub Actions 官方文档:https://docs.github.com/en/actions
- GitHub 官方示例库:https://github.com/actions/starter-workflows
- B站教学视频:搜索 “GitHub Actions 教程”
🙌 结语
持续集成是一项非常实用的技术,它能大大提高你写代码的信心和效率。从一开始可能觉得陌生,但只要跟着动手做一次,你会发现其实并没有那么难。
别忘了:一切技术的本质,都是解决问题的方法。
只要你愿意动手、愿意探索,就一定能掌握它。
🌟 下一篇推荐:《如何将 CI 与自动化部署结合使用》
🎉 现在你可以骄傲地说一句:
“我也有自己的 CI 流水线啦!”

评论 0