首页/开发/CI/CD 与发布速查/流水线触发方式总览
流水线设计54 条

流水线触发方式总览

推送、合并请求、标签、定时、手动与 API 触发各有适用场景,组合使用才能覆盖「日常验证 + 按需发布」。

CI/CD 与发布速查开发更新于 2026-10-12

常见触发

触发典型用途示例
push 推送分支日常验证GitHub:on: push
merge/pull request合入前验证GitLab:merge_request_event
tag 标签版本发布GitLab:$CI_COMMIT_TAG
schedule 定时夜间回归与巡检GitHub:on: schedule
manual/API按需发布与重跑GitLab:when: manual

GitLab rules 组合

GitLab rules 组合
rules:
  - if: $CI_PIPELINE_SOURCE == "merge_request_event"
  - if: $CI_COMMIT_TAG
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
触发条件写在仓库里(rules / on),比在平台上点击配置更可审计。

易错点

  • 分支与 MR 双触发导致同一提交跑两遍流水线:用 workflow:rules 或 on 过滤重复触发
  • 定时任务默认在默认分支上运行:切换默认分支后行为会变化,需要纳入变更评审

数据来源与参考

  • GitLab Docs《Pipeline triggers》
  • GitHub Docs《Events that trigger workflows》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌