| When using the `workflow_run` event, you can specify what branches the triggering workflow must run on in order to trigger your workflow. | |
| The `branches` and `branches-ignore` filters accept glob patterns that use characters like `*`, `**`, `+`, `?`, `!` and others to match more than one branch name. If a name contains any of these characters and you want a literal match, you need to _escape_ each of these special characters with `\`. For more information about glob patterns, see the [AUTOTITLE](/actions/using-workflows/workflow-syntax-for-github-actions#filter-pattern-cheat-sheet). | |
| For example, a workflow with the following trigger will only run when the workflow named `Build` runs on a branch whose name starts with `releases/`: | |
| ```yaml | |
| on: | |
| workflow_run: | |
| workflows: ["Build"] | |
| types: [requested] | |
| branches: | |
| - 'releases/**' | |
| ``` | |
| A workflow with the following trigger will only run when the workflow named `Build` runs on a branch that is not named `canary`: | |
| ```yaml | |
| on: | |
| workflow_run: | |
| workflows: ["Build"] | |
| types: [requested] | |
| branches-ignore: | |
| - "canary" | |
| ``` | |
| You cannot use both the `branches` and `branches-ignore` filters for the same event in a workflow. If you want to both include and exclude branch patterns for a single event, use the `branches` filter along with the `!` character to indicate which branches should be excluded. | |
| The order that you define patterns matters. | |
| * A matching negative pattern (prefixed with `!`) after a positive match will exclude the branch. | |
| * A matching positive pattern after a negative match will include the branch again. | |
| For example, a workflow with the following trigger will run when the workflow named `Build` runs on a branch that is named `releases/10` or `releases/beta/mona` but will not `releases/10-alpha`, `releases/beta/3-alpha`, or `main`. <!-- markdownlint-disable-line outdated-release-phase-terminology --> | |
| ```yaml | |
| on: | |
| workflow_run: | |
| workflows: ["Build"] | |
| types: [requested] | |
| branches: | |
| - 'releases/**' | |
| - '!releases/**-alpha' | |
| ``` | |