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

时间:2020-06-11 19:12:47

标签: continuous-integration github-actions

在Github Actions中的pull_request上设置了动作后,如何获得目标分支?用例是检索特定于PR(可能是分支)的提交。

3 个答案:

答案 0 :(得分:5)

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

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

答案 1 :(得分:2)

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

示例(修改自 the documentation):

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

  1. 当您需要将数据作为环境变量 (Source) 时:
<头>
环境变量 说明
GITHUB_HEAD_REF 仅针对拉取请求事件设置。头部分支的名称。
GITHUB_BASE_REF 仅针对拉取请求事件设置。基础分支的名称。

示例(修改自 the documentation):

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

答案 2 :(得分:0)

您可以看到所有GitHub动作拉取请求事件属性here