首页/开发/CI/CD 与发布速查/自动取消冗余流水线
流水线设计54 条

自动取消冗余流水线

同一分支连续推送时取消未跑的旧流水线:省资源、缩短反馈,避免「旧提交的结果淹没新提交」。

CI/CD 与发布速查开发更新于 2026-10-12
GitLab作业级 interruptible: true 配合项目「自动取消冗余流水线」设置生效
GitHubconcurrency + cancel-in-progress: true
注意发布类作业通常不可中断,避免半发布状态

GitLab

GitLab
test:
  interruptible: true
  script: npm test

GitHub

GitHub
concurrency:
  group: ci-${{ github.ref }}
  cancel-in-progress: true
部署中作业不要标记可中断:中断后的环境状态需要人工核对。

易错点

  • 发布流水线整体打开取消:正在推行的部署被打断,可能留下半成品
  • 分支保护要求旧运行结果:取消后检查状态变化,合并条件随之更新

数据来源与参考

  • GitLab Docs《Auto-cancel redundant pipelines》
  • GitHub Docs《Using concurrency》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌