介绍
GitHub Actions 是一种持续集成和持续交付 (CI/CD) 平台,可用于自动执行生成、测试和部署管道。 你可以创建工作流,以便在推送更改到存储库时运行测试,或将合并的拉取请求部署到生产环境。
本快速入门指南将介绍如何使用 GitHub 的用户界面添加工作流,以便演示 GitHub Actions 的某些基本功能。
若要开始使用预配置的工作流,请浏览 actions/starter-workflows 存储库中的模板列表。 有关详细信息,请参阅“使用工作流模板”。
有关 GitHub Actions 工作流的概述,请参阅“关于工作流程”。 如果要了解构成 GitHub Actions 的各种组件,请参阅“了解 GitHub Actions”。
使用工作流模板
GitHub 提供预配置的工作流模板,可以按原样使用或自定义它来创建自己的工作流。 GitHub 分析代码并显示可能对存储库有用的工作流模板。 例如,如果仓库包含 Node.js 代码,您就会看到 Node.js 项目的建议。
这些工作流模板旨在帮助你快速启动和运行,提供了一系列配置,例如:
使用这些工作流作为构建自定义工作流的起点或按原样使用它们。 可以在 actions/starter-workflows 存储库中浏览工作流模板的完整列表。 有关详细信息,请参阅“使用工作流模板”。
先决条件
本指南假定:
-
你至少有关于如何使用 GitHub 的基本知识。 如果没有,你将发现先阅读存储库和拉取请求文档中的一些文章会非常有帮助。 有关示例,请参阅“仓库快速入门”、“关于分支”和“关于拉取请求”。
-
你在 GitHub 上有一个存储库,可在其中添加文件。
-
你有 GitHub Actions 的访问权限
Note
如果 “操作”**** 选项卡未显示在 GitHub 上的存储库名称下,则可能是因为为存储库禁用了“操作”。 有关详细信息,请参阅“管理存储库的 GitHub Actions 设置”。
创建第一个工作流程
-
在 GitHub 上的存储库中,创建
.github/workflows
目录中名为github-actions-demo.yml
的工作流文件。 要执行此操作:-
如果
.github/workflows
目录已存在,请导航到 GitHub 上的该目录,单击“添加文件”,然后单击“创建新文件”,然后将命名文件github-actions-demo.yml
。 -
如果存储库没有
.github/workflows
目录,请转到 GitHub 上的存储库主页,单击“添加文件”,然后单击“创建新文件”,并命名文件.github/workflows/github-actions-demo.yml
。 这会在单个步骤中创建.github
和workflows
目录以及github-actions-demo.yml
文件。
Note
若要使 GitHub 在存储库中发现任何 GitHub Actions 工作流,必须将工作流文件保存在名为
.github/workflows
的目录中。你可以为工作流文件指定所需的任何名称,但必须使用
.yml
或.yaml
作为文件扩展名。 YAML 通常是用于配置文件的标记语言。 -
-
将以下 YAML 内容复制到
github-actions-demo.yml
文件中:YAML name: GitHub Actions Demo run-name: ${{ github.actor }} is testing out GitHub Actions 🚀 on: [push] jobs: Explore-GitHub-Actions: runs-on: ubuntu-latest steps: - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!" - run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." - name: Check out repository code uses: actions/checkout@v4 - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." - run: echo "🖥️ The workflow is now ready to test your code on the runner." - name: List files in the repository run: | ls ${{ github.workspace }} - run: echo "🍏 This job's status is ${{ job.status }}."
name: GitHub Actions Demo run-name: ${{ github.actor }} is testing out GitHub Actions 🚀 on: [push] jobs: Explore-GitHub-Actions: runs-on: ubuntu-latest steps: - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!" - run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." - name: Check out repository code uses: actions/checkout@v4 - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." - run: echo "🖥️ The workflow is now ready to test your code on the runner." - name: List files in the repository run: | ls ${{ github.workspace }} - run: echo "🍏 This job's status is ${{ job.status }}."
在此阶段,你无需了解此工作流的详细信息。 现在,你只需将内容复制并粘贴到文件中。 完成本快速入门指南后,可以了解“关于工作流程”中工作流文件的语法,并了解 GitHub Actions 上下文的说明,例如
${{ github.actor }}
和${{ github.event_name }}
,请参阅“访问有关工作流运行的上下文信息”。 -
单击“提交更改”。
-
在“建议更改”对话框中,选择提交到默认分支的选项或创建新分支并启动拉取请求的选项。 然后单击“提交更改”**** 或“建议更改”****。
向存储库的分支提交工作流文件会触发 push
事件并运行工作流。
如果选择启动拉取请求,则可以继续并创建拉取请求,但对于本快速入门来说,这不是必要的,因为提交仍然是对分支进行的,并会触发新工作流。
查看工作流程结果
-
在 GitHub 上,导航到存储库的主页面。
-
在存储库名称下,单击 “操作”。
-
在左侧边栏中,单击要显示的工作流,在此示例中为“GitHub Actions 演示”。
-
从工作流运行列表中,单击要查看的运行名称,在此示例中为“USERNAME 正在测试 GitHub Actions”。
-
在工作流运行页的左侧边栏中,单击“作业”下的“Explore-GitHub-Actions”作业 。
-
日志显示每个步骤的处理方式。 展开任何步骤以查看其细节。
例如,你可以看到存储库中的文件列表:
每次将代码推送到分支时,刚刚添加的示例工作流都会运行,并显示 GitHub Actions 如何处理存储库的内容。 有关深入教程,请参阅“了解 GitHub Actions”。
后续步骤
GitHub Actions 可以帮助您自动执行应用程序开发过程的几乎每个方面。 准备好开始了吗? 以下是一些帮助您对 GitHub Actions 执行后续操作的有用资源:
- 若要创建 GitHub Actions 工作流,请参阅“使用工作流模板”。
- 有关持续集成 (CI) 工作流,请参阅“构建和测试”。
- 有关生成和发布包,请参阅“发布包”。
- 有关部署项目,请参阅“用例和示例”。
- 有关 GitHub 上的自动化任务和流程,请参阅“管理项目”。
- 有关演示 GitHub Actions 更复杂功能的示例,请参阅“用例和示例”。 这些详细示例说明了如何在运行器上测试代码、访问 GitHub CLI 以及使用高级功能(如并发和测试矩阵)。
- 要认证你在 GitHub Actions 自动化工作流和加速开发方面的能力,可通过 GitHub Certifications 获得 GitHub Actions 证书。 有关详细信息,请参阅“关于 GitHub Certifications”。