When an action is set on pull_request in Github Actions, how to get the target branch? The use case is to retrieve the PR- (and hopefully, branch)-specific commits.
Asked
Active
Viewed 3.2k times
40
3 Answers
43
- When you need the data in expressions (Source):
| Property name | Type | Description |
|---|---|---|
github.base_ref |
string | The base_ref or target branch of the pull request in a workflow run. This property is only available when the event that triggers a workflow run is a pull_request. |
github.head_ref |
string | The head_ref or source branch of the pull request in a workflow run. This property is only available when the event that triggers a workflow run is a pull_request. |
An example (modified from the documentation):
steps:
- uses: actions/hello-world-javascript-action@v1.1
if: ${{ github.base_ref == 'main' }}
- When you need the data as environment variables (Source):
| Environment variable | Description |
|---|---|
GITHUB_HEAD_REF |
Only set for pull request events. The name of the head branch. |
GITHUB_BASE_REF |
Only set for pull request events. The name of the base branch. |
An example (modified from the documentation):
steps:
- name: Hello world
run: echo Hello world from $GITHUB_BASE_REF!
Nadjib Mami
- 5,736
- 9
- 37
- 49
Bartleby
- 1,144
- 1
- 13
- 14
28
You can access the target branch with ${{ github.event.pull_request.base.ref }}.
To know the full list of properties of the github.event object, try to run more $GITHUB_EVENT_PATH.
Lucas
- 1,171
- 9
- 21