All Projects β†’ nikku β†’ merge-me

nikku / merge-me

Licence: MIT license
A GitHub app that merges your pull requests once all required checks pass.

Programming Languages

javascript
184084 projects - #8 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to merge-me

linter-alex
πŸ“Sensitive, considerate writing before you merge your Pull Requests
Stars: ✭ 67 (+252.63%)
Mutual labels:  probot, github-app, probot-app
Commitlint Bot
[NOT MAINTAINED] use https://github.com/apps/semantic-pull-requests
Stars: ✭ 157 (+726.32%)
Mutual labels:  probot, github-app, probot-app
Todo
πŸ€–βœ… GitHub App that creates new issues from actionable comments in your code.
Stars: ✭ 685 (+3505.26%)
Mutual labels:  probot, github-app, probot-app
Weekly Digest
Weekly summary of activity on your GitHub repository πŸ“†
Stars: ✭ 199 (+947.37%)
Mutual labels:  probot, github-app, probot-app
react-preview
a GitHub App built with probot that generates preview links for react based projects.
Stars: ✭ 14 (-26.32%)
Mutual labels:  probot, github-app, probot-app
Gh Polls Bot
Automatically create polls in GitHub issues.
Stars: ✭ 187 (+884.21%)
Mutual labels:  probot, github-app, probot-app
scalafmt-probot
πŸ€–Github bot for checking code formatting with scalafmt
Stars: ✭ 15 (-21.05%)
Mutual labels:  probot, github-app, probot-app
Mergeable
πŸ€– All the missing GitHub automation πŸ™‚ πŸ™Œ
Stars: ✭ 475 (+2400%)
Mutual labels:  probot, github-app, probot-app
Auto Assign
πŸ€– A Probot app that adds reviewers to pull requests when pull requests are opened.
Stars: ✭ 140 (+636.84%)
Mutual labels:  probot, github-app, probot-app
Request Info
Requests more info from PRs/Issues with either the default title or a blank body
Stars: ✭ 89 (+368.42%)
Mutual labels:  probot, github-app, probot-app
boring-cyborg
πŸ€– A Github bot to automatically label PRs, issues and perform all the boring operations that you don't want to do.
Stars: ✭ 66 (+247.37%)
Mutual labels:  probot, github-app, probot-app
issuelabeler
A GitHub bot to label issues automatically based on title and body against list of defined labels. System status (https://status.verticalaxisbd.com/)
Stars: ✭ 23 (+21.05%)
Mutual labels:  probot, github-app, probot-app
Probot Gpg
A GitHub App that enforces GPG signatures on pull requests (no longer maintained)
Stars: ✭ 13 (-31.58%)
Mutual labels:  probot, github-app, probot-app
Stale
A GitHub App built with Probot that closes abandoned Issues and Pull Requests after a period of inactivity.
Stars: ✭ 1,070 (+5531.58%)
Mutual labels:  probot, github-app, probot-app
new-pr-welcome
Welcome users when they open their first PR in your repository
Stars: ✭ 20 (+5.26%)
Mutual labels:  probot, github-app, probot-app
branch-switcher
a GitHub bot that switches the base branch of pull requests to the preferred branch
Stars: ✭ 15 (-21.05%)
Mutual labels:  probot, github-app, probot-app
triage-new-issues
A GitHub App, built with Probot that adds `triage` label to newly-created issues which don't have labels
Stars: ✭ 23 (+21.05%)
Mutual labels:  github-app, probot-app
probot-ooo
πŸ™… Respond with an auto-responder when you are OOO
Stars: ✭ 36 (+89.47%)
Mutual labels:  probot, probot-app
Pull
πŸ€– Keep your forks up-to-date via automated PRs
Stars: ✭ 3,364 (+17605.26%)
Mutual labels:  probot, probot-app
First Timers Bot
A friendly bot that helps onboarding new Open Source Contributors
Stars: ✭ 239 (+1157.89%)
Mutual labels:  probot, probot-app

merge-me

ci Code coverage

A GitHub app, built with Probot, that merges your pull requests once all required checks pass.

merge-me app in action

Installation

Install the app from the GitHub apps directory.

Alternatively, run it yourself or integrate it with an existing Probot.

Features

Merge Rules

Without branch protection, the app ensures a pull request meets the following conditions before merging:

  • Pull request is not a draft
  • At least one status check exists
  • All status checks are completed
  • All status checks have the outcome successful or neutral
  • At least one review approval exists
  • No review requests changes

Rules and merge method may be tuned with additional configuration.

Configuration

You configure the merge behavior by placing a .github/merge-me.yml file into your repository.

minApprovals=1

This property specifies the number of approvals required to merge a PR. Defaults to 1, will always be at least 1 for external contributions.

Example
minApprovals: 2

mergeMethod=rebase

This property specifies whether to use rebase (default) or merge as the merge method.

Example
mergeMethod: 'merge'

reviewTeams

This property lists teams to account for when checking for approvals. Taking teams into account during the merge check requires the members app permission and is enabled for organizational repositories only.

If reviewTeams is specified, the app checks for approvals for each team involved in the PR. It deduces the effective teams to account for via the team memberships of existing and requested reviewers. The app merges a PR only if all effective review teams have the configured amount of minApprovals.

Example
reviewTeams:
- design
- development

Related

This app works nicely with others:

  • WIP - prevents merging of branches that you tag as work in progress
  • delete-merged-branch - deletes the feature branch once merged

Combine these apps as needed for an excellent merge flow.

Setup and Run

# install dependencies
npm install

# run the app
LOG_LEVEL=debug npm start

# test the app
LOG_LEVEL=debug npm test

Integrate with an Existing Probot

You can combine this app with others.

{
  "name": "my-probot-app",
  "private": true,
  "dependencies": {
    "@nikku/merge-me": "^0.11.0",
    "probot-settings": "probot/settings"
  },
  "scripts": {
    "start": "probot run"
  },
  "probot": {
    "apps": ["@nikku/merge-me", "probot-settings"]
  }
}

Alternatives

Consider probot-auto-merge if you need an app with more configuration options. It includes many of the features provided by related apps, too.

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].