Skip to main content

此版本的 GitHub Enterprise Server 将于以下日期停止服务 2025-08-27. 即使针对重大安全问题,也不会发布补丁。 为了获得更好的性能、更高的安全性和新功能,请升级到最新版本的 GitHub Enterprise。 如需升级帮助,请联系 GitHub Enterprise 支持

使用条件控制作业执行

除非满足条件,否则阻止作业运行。

可以使用 jobs.<job_id>.if 条件来阻止步骤运行,除非满足条件。 您可以使用任何支持上下文和表达式来创建条件。 有关此键中支持哪些上下文的详细信息,请参阅“上下文参考”。

示例:仅针对特定存储库运行作业

此示例使用 if 控制 production-deploy 作业何时可以运行。 仅当存储库名为 octo-repo-prod 且位于 octo-org 组织内时,它才会运行。 否则,作业将被标记为“跳过”。

YAML
name: example-workflow
on: [push]
jobs:
  production-deploy:
    if: github.repository == 'octo-org/octo-repo-prod'
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '14'
      - run: npm install -g bats

跳过的作业显示“已跳过此检查”消息。

注意

跳过的作业将报告其状态为“Success”。 即使是必需检查,也不会阻止拉取请求合并。