🤖 a GitHub App built with probot that keeps your repository up-to-date with upstream changes via automated pull requests.
- A pull request is created when an upstream is updated (checks periodically).
- Pull requests can be automatically merged or hard reset to match upstream.
Upstream must be in the same fork network
- Install
Pull app.
- That's it!
Pull app will automatically watch and pull in upstream's default (master) branch to yours with hard reset.
💡 Best Practice: Do NOT touch default (master) branch in any forks. Always create new branches to work on.
- Create a new branch.
- Setup the new branch as default branch under repository Settings > Branches.
- Add
.github/pull.ymlto your default branch.
(behaves the same as basic setup)
version: "1"
rules:
- base: master
upstream: wei:master # change wei to the owner of upstream repo
autoMerge: true
autoMergeHardReset: trueversion: "1"
rules: # Array of rules
- base: master # Required. Target branch
upstream: wei:master # Required. Must be in the same fork network.
autoMerge: true # Optional, Default: false
autoMergeHardReset: true # Optional, Default: false DANGEROUS Wipes target branch changes and reset ref to match upstream
- base: dev
upstream: master
assignees: # Optional
- wei
reviewers: # Optional
- wei
label: ":arrow_heading_down: pull" # Optional- Go to
https://pull.now.sh/check/${owner}/${repo}to validate your.github/pull.yml. - Install
Pull app.
For the most common use case (a single master branch), you can just direct users to install Pull with no configurations.
If you need a more advanced setup (such as a docs branch in addition to master), consider adding .github/pull.yml to your repository pointing to yourself (see example). This will allow forks to install Pull and stay updated automatically.
Example (assuming owner is your user or organization name):
version: "1"
rules:
- base: master
upstream: owner:master
autoMerge: true
autoMergeHardReset: true
- base: docs
upstream: owner:docs
autoMerge: true
autoMergeHardReset: true