GitHub Actions 是 GitHub 官方 CI/CD 工具,无需自建服务器,直接在仓库内完成自动化构建、测试、部署。

核心概念

概念说明
Workflow工作流,一个完整的自动化流程,对应一个 .yml 文件
Job任务,Workflow 由一个或多个 Job 组成,默认并行执行
Step步骤,Job 由多个 Step 组成,串行执行
Action动作,封装好的可复用脚本/工具

目录结构

.github/
└── workflows/
    ├── test.yml
    └── deploy.yml

配置示例

name: Java CI/CD
 
on:
  push:
    branches: [main, dev]
 
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: 拉取代码
        uses: actions/checkout@v4
 
      - name: 配置 JDK 17
        uses: actions/setup-java@v4
        with:
          java-version: '17'
 
      - name: 执行测试
        run: mvn clean test
 
      - name: 打包
        run: mvn package -Dmaven.test.skip=true

核心关键字

关键字作用
on触发条件(push、workflow_dispatch)
runs-on运行环境(ubuntu-latest、windows-latest)
uses调用现成 Action
run执行 shell 命令
with给 Action 传参

触发方式

# 推送触发
on:
  push:
    branches: [main]
 
# 手动触发
on: workflow_dispatch