我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

取消工作流程

您可以取消正在运行的工作流程。 当您取消工作流程运行时,GitHub 会取消属于该工作流程的所有作业和步骤。

GitHub Actions 可用于 GitHub Free、GitHub Pro、组织的 GitHub Free、GitHub Team、GitHub Enterprise Cloud 和 GitHub AE。 GitHub Actions 不适用于使用旧版按仓库计划的帐户所拥有的私有仓库。 更多信息请参阅“GitHub 的产品”。

执行这些步骤需要对仓库的写入访问权限。

取消工作流程运行

  1. 在 GitHub 上,导航到仓库的主页面。

  2. 在仓库名称下,单击 Actions(操作)主仓库导航中的操作选项卡

  3. 在左侧边栏中,单击您想要查看的工作流程。 左侧边栏中的工作流程列表

  4. 从工作流程运行列表中,单击您要取消的已排队进行中运行的名称。 工作流程运行的名称

  5. 在工作流程右上角单击 Cancel workflow(取消工作流程)

    取消检查套件按钮

GitHub 取消工作流程运行所执行的步骤

取消工作流程运行时,您可能正在运行使用与工作流程运行相关的资源的其他软件。 为了帮助您释放与工作流程运行相关的资源,它可能有助于了解 GitHub 为取消工作流程运行而执行的步骤。

  1. 要取消工作流程运行,服务器将重新评估所有正在运行的作业的 if 条件。 如果条件评估为 true,作业将不会取消。 例如,条件 if: always() 将评估为 true,并且作业继续运行。 没有条件时,则等同于条件 if: success(),仅在上一步已成功完成时才会运行。
  2. 对于需要取消的作业,服务器向包含需取消作业的所有运行器机器发送取消消息。
  3. 对于继续运行的作业,服务器将对未完成的步骤重新评估 if 条件。 如果条件评估为 true,则步骤继续运行。
  4. 对于需要取消的步骤,运行器机器发送 SIGINT/Ctrl-C 到该步骤的输入进程(node 用于 javascript 操作,docker 用于容器操作,bash/cmd/pwd 则在步骤中使用 run 时发送)。 如果进程未在 7500 毫秒内退出,运行器将发送 SIGTERM/Ctrl-Break 到此进程,然后等待 2500 毫秒让进程退出。 如果该进程仍在运行,运行器会停止进程树。
  5. 在 5 分钟取消超时期后,服务器将强制终止未完成运行或无法完成取消进程的所有作业和步骤。

此文档对您有帮助吗? 隐私政策

帮助我们创建出色的文档!

所有 GitHub 文档都是开源的。看到错误或不清楚的内容了吗?提交拉取请求。

做出贡献

或, 了解如何参与。