关于持续集成

您可以直接在 GitHub 仓库中通过 GitHub Actions 创建自定义持续集成 (CI) 和持续部署 (CD) 工作流程。

GitHub Actions 可用于 GitHub Free、GitHub Pro、组织的 GitHub Free、GitHub Team、GitHub Enterprise Cloud 和 GitHub AE。 GitHub Actions 不适用于使用旧版按仓库计划的帐户所拥有的私有仓库。

注: GitHub 托管的运行器目前在 GitHub Enterprise Server 上不受支持。 您可以在 GitHub 公共路线图 上查看有关未来支持计划的更多信息。

关于持续集成

持续集成 (CI) 是一种需要频繁提交代码到共享仓库的软件实践。 频繁提交代码能较早检测到错误,减少在查找错误来源时开发者需要调试的代码量。 频繁的代码更新也更便于从软件开发团队的不同成员合并更改。 这对开发者非常有益,他们可以将更多时间用于编写代码,而减少在调试错误或解决合并冲突上所花的时间。

提交代码到仓库时,可以持续创建并测试代码,以确保提交未引入错误。 您的测试可以包括代码语法检查(检查样式格式)、安全性检查、代码覆盖率、功能测试及其他自定义检查。

创建和测试代码需要服务器。 您可以在推送代码到仓库之前在本地创建并测试更新,也可以使用 CI 服务器检查仓库中的新代码提交。

关于使用 GitHub Actions 的持续集成

使用 GitHub Actions 的 CI 提供可以在仓库中构建代码并运行测试的工作流程。 工作流程可在 GitHub 托管的虚拟机或您自行托管的机器上运行。 更多信息请参阅“GitHub 托管的运行器的虚拟环境”和“关于自托管运行器”。

您可以配置 CI 工作流程在 GitHub Enterprise Server 事件发生时运行(例如,当新代码推送到您的仓库时)、按设定的时间表运行,或者在使用仓库分发 web 挂钩的外部事件发生时运行。

GitHub Enterprise Server 运行 CI 测试并在拉取请求中提供每次测试的结果,因此您可以查看分支中的更改是否引入错误。 如果工作流程中的所有 CI 测试通过,您推送的更改可供团队成员审查或合并 如果测试失败,则是其中某项更改导致了失败。

如果在仓库中设置了 CI,GitHub Enterprise Server 会分析仓库中的代码,并根据仓库中的语言和框架推荐 CI 工作流程。 例如,如果您使用 Node.js,GitHub Enterprise Server 将提议使用模板文件来安装 Node.js 包和运行测试。 您可以使用 GitHub Enterprise Server 提议的 CI 工作流程模板,自定义提议的模板,或者创建自定义工作流程文件来运行 CI 测试。

提议的持续集成模板截屏

除了帮助设置项目的 CI 工作流程之外,您还可以使用 GitHub Actions 创建跨整个软件开发生命周期的工作流程。 例如,您可以使用操作来部署、封装或发行项目。 更多信息请参阅“关于 GitHub Actions”。

有关常用术语的定义,请参阅“GitHub Actions 的核心概念”。

支持的语言

GitHub Enterprise Server 提供各种不同语言和框架的 CI 工作流程模板。

在 您的 GitHub Enterprise Server 实例 上的 actions/starter-workflows 仓库中浏览 GitHub Enterprise Server 提供的 CI 工作流程模板的完整列表。

跳过工作流程运行

如果您想暂时阻止触发工作流程,可以对提交消息添加跳过指令。 本来会触发 on: pushon: pull_request 的工作流程,如果您将以下任何字符串添加到推送中的提交消息或者拉取请求的 HEAD 提交,则不会触发:

  • [skip ci]
  • [ci skip]
  • [no ci]
  • [skip actions]
  • [actions skip]

或者,您也可以使用两个空行后接 skip-checks: trueskip-checks:true 来结束提交消息。

如果您的仓库配置为需要先通过特定检查,则无法合并拉取请求。 要允许合并拉取请求,您可以将新提交推送到拉取请求,而无需提交消息中的跳过指令。

注意:跳过指令仅适用于 pushpull_request 事件。 例如,将 [skip ci] 添加到提交消息不会停止触发 on: pull_request_target 的工作流程运行。

工作流程运行通知

如果为 GitHub Actions 启用电子邮件或 web 通知,则在触发的任何工作流程运行完成时,您将收到通知。 通知将包括工作流程运行的状态(包括成功、失败、中立和取消的运行)。 您也可以选择仅在工作流程运行失败时接收通知。

计划工作流程的通知将发送给最初创建该工作流程的用户。 如有不同的用户更新工作流程文件中的计划任务语法,后续通知将改为发送给该用户。 如果预定的工作流程禁用后重新启用, 通知将发送给重新启用工作流程的用户,而不是最后修改计划任务语法的用户。

您也可以在仓库的 Actions(操作)选项卡上查看工作流程的状态。 更多信息请参阅“管理工作流程运行”。

工作流程运行的状态徽章

更多信息请参阅“配置工作流程

延伸阅读

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

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

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

做出贡献

或, 了解如何参与。