嵌入式开发中的 Git CI/CD
一、CI/CD 概述
1.1 什么是 CI/CD?
持续集成 (Continuous Integration, CI)
- 开发人员频繁地将代码集成到主分支
- 每次集成都通过自动化构建和测试来验证
- 及早发现集成错误,降低修复成本
持续交付/部署 (Continuous Delivery/Deployment, CD)
- 确保代码随时处于可发布状态
- 自动化部署到测试/生产环境
- 快速、可靠地交付软件更新
1.2 嵌入式开发中的特殊挑战
- 硬件依赖: 需要特定的开发板或模拟器
- 交叉编译: 目标平台与开发平台不同
- 资源限制: 内存、存储空间有限
- 实时性要求: 严格的时序要求
- 安全性: 代码质量直接影响系统稳定性
二、GitHub Actions Workflow 核心概念
2.1 基本结构
name: CI/CD Pipeline # 工作流名称
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
job-name:
runs-on: ubuntu-latest # 运行环境
steps:
- name: Step Name
run: command
2.2 关键组件说明
| 组件 | 作用 | 示例 |
|---|---|---|
on | 定义触发条件 | push、pull_request、schedule |
jobs | 定义并行/串行任务 | 可设置依赖关系 |

