PullApprove is a product of Dropseed
PullApprove logo

Take control of your team's GitHub pull request review process

Install the GitHub App

Trusted by over 500 organizations on 250,000+ pull requests

We won't use their names, but you'd recognize them.

Decide exactly who reviews what

Whether they have ownership over specific files, areas of expertise, or phases in the review process, you can use conditions to loosely or precisely decide who needs to review which pull requests.

See what's possible
version: 3
groups:
  database:
    conditions:
    - "'*migrations*' in files or 'database' in labels"
    reviewers:
      users:
      - jeff

Review starts when you say so

Not every pull request should be reviewed right away. And some PRs never need to be reviewed. You decide when reviewers need to get involved, and we'll make it happen.

version: 3
pullapprove_conditions:
- "'WIP' not in title"
- "'hotfix' not in labels"
- "base.ref == base.repo.default_branch"
- "'license/cla' in statuses.succeeded"
- "'*travis*' in statuses.succeeded"

groups:
  ...
Conditions with status checks from PullApprove

Don't bug people until they're needed

PullApprove only requests a review when it is needed. You decide how many reviewers need to be requested at a time, and we'll cycle through them until enough approvals have been given.

Pull request review requested from PullApprove
version: 3
groups:
  code:
    reviews:
      required: 4
      request: 2
      request_order: random
    reviewers:
      teams:
      - code-review

Keep the author in the loop

Good communication is key to code review. Use notifications to make it clear what needs to happen next in your process and what the expectations are for the PR author and the reviewers.

Pull request comment from PullApprove
version: 3
notifications:
- when: pull_request.opened
  comment: |
    Hey @{{ author }}, thanks for the PR!
    The review will start once the tests and CI checks have passed.
    You'll also need to sign our CLA if you haven't before.

groups:
  ...

Out of the office or unavailable?

Set your status to "unavailable" and we'll automatically remove your pending review requests, and prevent any new requests while you're away. Do yourself and your team a favor by not holding things up.

GitHub unavailable away status with PullApprove

Centralize your organization settings

In large organizations with lots of repositories, sharing config settings is extremely valuable.

You can also use our templates if you want to try a proven workflow before figuring out exactly how you want it to work.

version: 3
extends: https://api.github.com/repos/example/pullapprove-config/contents/.pullapprove.yml

Frustrated with an unorganized pull request process?

Try PullApprove