🤖 Keep your forks up-to-date via automated PRs
🤖 a GitHub App built with probot that keeps your forks up-to-date with upstream via automated pull requests.
Trusted by repositories, triggered .
Can you help keep this open source service alive? 💖 Please sponsor : )
⭐ Star this project (Highly recommended, starred users may receive priority over regular users)
Pull app will automatically watch and pull in upstream's default (master) branch to yours using hard reset every few hours. You can also manually trigger it anytime.
Create a new branch.
Setup the new branch as default branch under repository Settings > Branches.
Add .github/pull.yml
to 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
mergeMethod: hardreset
version: "1"
rules: # Array of rules
- base: master # Required. Target branch
upstream: wei:master # Required. Must be in the same fork network.
mergeMethod: hardreset # Optional, one of [none, merge, squash, rebase, hardreset], Default: none.
mergeUnstable: false # Optional, merge pull request even when the mergeable_state is not clean. Default: false
- base: dev
upstream: master # Required. Can be a branch in the same forked repo.
assignees: # Optional
- wei
reviewers: # Optional
- wei
conflictReviewers: # Optional, on merge conflict assign a reviewer
- wei
label: ":arrow_heading_down: pull" # Optional
conflictLabel: "merge-conflict" # Optional, on merge conflict assign a custom label, Default: merge-conflict
Go to https://pull.git.ci/check/${owner}/${repo}
to validate your .github/pull.yml
(Public repos only). See #234 for another way to validate it.
Install Pull app.
Go to https://pull.git.ci/process/${owner}/${repo}
to manually trigger pull.
Note: Nothing will happen if your branch is already even with upstream.
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
mergeMethod: hardreset
- base: docs
upstream: owner:docs
mergeMethod: hardreset