如何从Actions中获取GitHub拉取请求的目标分支?

48
在 Github Actions 中设置 pull_request 后,如何获取目标分支?应用场景是检索与 PR(和希望的情况下,分支)相关的提交记录。
3个回答

50
  1. 当你需要表达式中的数据(来源):
属性名称 类型 描述
github.base_ref 字符串 工作流运行中拉取请求的目标分支 base_ref。此属性仅在触发工作流运行的事件为 pull_request 时可用。
github.head_ref 字符串 工作流运行中拉取请求的源分支 head_ref。此属性仅在触发工作流运行的事件为 pull_request 时可用。

一个示例(修改自 文档):

steps:
  - uses: actions/hello-world-javascript-action@v1.1
    if: ${{ github.base_ref == 'main' }}

  1. 当您需要将数据作为环境变量使用时(来源):
环境变量 描述
GITHUB_HEAD_REF 仅在拉取请求事件中设置。头分支的名称。
GITHUB_BASE_REF 仅在拉取请求事件中设置。基础分支的名称。

一个示例(修改自文档):

steps:
  - name: Hello world
    run: echo Hello world from $GITHUB_BASE_REF!

28

你可以使用${{ github.event.pull_request.base.ref }}访问目标分支。

要了解github.event对象的完整属性列表,请尝试运行more $GITHUB_EVENT_PATH


1

您可以在此处查看所有GitHub操作的拉取请求事件属性。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接