3.1 KiB
Create Pull Request
A GitHub action to create a pull request for changes to your repository in the actions workspace.
Changes to a repository in the actions workspace persist between actions in a workflow. This action is useful to pair with other actions that modify or add files to your repository. The changes will be automatically committed to a new branch and a pull request created.
Create Pull Request action will:
- Check for repository changes in the actions workspace. This includes untracked (new) files as well as modified files.
- Commit all changes to a new branch. The commit will be made using the name and email of the
HEAD
commit author. - Create a pull request to merge the new branch into the currently active branch executing the workflow.
Usage
action "Create Pull Request" {
uses = "peter-evans/create-pull-request@v1.0.0"
secrets = ["GITHUB_TOKEN"]
}
Environment variables
These variables are all optional. If not set, a default value will be used.
PULL_REQUEST_BRANCH
- The branch name. See Branch naming below for details.COMMIT_MESSAGE
- The message to use when committing changes.PULL_REQUEST_TITLE
- The title of the pull request.PULL_REQUEST_BODY
- The body of the pull request.
Branch naming
The variable PULL_REQUEST_BRANCH
defaults to create-pull-request/patch
.
Commits will be made to a branch with this name and suffixed with the short SHA1 commit hash.
e.g.
create-pull-request/patch-fcdfb59
create-pull-request/patch-394710b
Ignoring files
If there are files or directories you want to ignore you can simply add them to a .gitignore
file at the root of your repository. The action will respect this file.
Example
Here is an example that sets all the environment variables.
action "Create Pull Request" {
uses = "peter-evans/create-pull-request@v1.0.0"
secrets = ["GITHUB_TOKEN"]
env = {
PULL_REQUEST_BRANCH = "my-patches"
COMMIT_MESSAGE = "Auto-modify files by my-file-modifier-action"
PULL_REQUEST_TITLE = "Changes from my-file-modifier-action"
PULL_REQUEST_BODY = "This is an auto-generated PR with changes from my-file-modifier-action"
}
}
This configuration will create pull requests that look like this:
License
MIT License - see the LICENSE file for details