{"id":13603038,"url":"https://github.com/nikku/merge-me","last_synced_at":"2026-03-14T12:37:06.462Z","repository":{"id":54556042,"uuid":"150797993","full_name":"nikku/merge-me","owner":"nikku","description":"A GitHub app that merges your pull requests once all required checks pass.","archived":false,"fork":false,"pushed_at":"2024-01-22T16:34:41.000Z","size":1087,"stargazers_count":22,"open_issues_count":3,"forks_count":4,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-01-30T19:47:36.781Z","etag":null,"topics":["bot","github","github-app","probot","probot-app"],"latest_commit_sha":null,"homepage":"https://github.com/apps/merge-me","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nikku.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["nikku"]}},"created_at":"2018-09-28T21:50:36.000Z","updated_at":"2024-06-04T15:23:02.000Z","dependencies_parsed_at":"2024-09-16T13:30:25.569Z","dependency_job_id":"ba9ff0c7-37f0-4f25-81e5-72c3b858b8d5","html_url":"https://github.com/nikku/merge-me","commit_stats":{"total_commits":222,"total_committers":4,"mean_commits":55.5,"dds":"0.058558558558558516","last_synced_commit":"3c2e03cfa7c756368a2afb71476cd52eb436a062"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikku%2Fmerge-me","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikku%2Fmerge-me/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikku%2Fmerge-me/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikku%2Fmerge-me/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nikku","download_url":"https://codeload.github.com/nikku/merge-me/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237861368,"owners_count":19377974,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot","github","github-app","probot","probot-app"],"created_at":"2024-08-01T18:01:47.317Z","updated_at":"2025-10-23T17:30:59.195Z","avatar_url":"https://github.com/nikku.png","language":"JavaScript","funding_links":["https://github.com/sponsors/nikku"],"categories":["bot"],"sub_categories":[],"readme":"# merge-me\n\n[![ci](https://github.com/nikku/merge-me/actions/workflows/CI.yml/badge.svg)](https://github.com/nikku/merge-me/actions/workflows/CI.yml)\n[![Code coverage](https://img.shields.io/codecov/c/github/nikku/merge-me.svg)](https://codecov.io/gh/nikku/merge-me)\n\nA GitHub app, built with [Probot](https://probot.github.io), that merges your pull requests once all required checks pass.\n\n![merge-me app in action](./docs/screenshot.png)\n\n\n## Installation\n\n[Install the app](https://github.com/apps/merge-me) from the GitHub apps directory.\n\nAlternatively, [run it yourself](#setup-and-run) or [integrate it with an existing Probot](#integrate-with-an-existing-probot).\n\n\n## Features\n\n* Requires zero configuration\n* Enforces [branch protection rules](https://help.github.com/articles/about-protected-branches/), if configured\n* Applies [sensible defaults](#merge-rules) in the absence of branch protection\n* Accounts for [review teams](#reviewteams), if configured\n* Merges using the _rebase_ (default) or _merge_ method\n\n\n## Merge Rules\n\nWithout [branch protection](https://help.github.com/articles/about-protected-branches/), the app ensures a pull request meets the following conditions before merging:\n\n* Pull request is not a draft\n* At least one status check exists\n* All status checks are `completed`\n* All status checks have the outcome `successful` or `neutral`\n* At least one review approval exists\n* No review requests changes\n\nRules and merge method may be tuned with [additional configuration](#configuration).\n\n\n## Configuration\n\nYou configure the merge behavior by placing a `.github/merge-me.yml` file into your repository.\n\n#### `minApprovals=1`\n\nThis property specifies the number of approvals required to merge a PR. Defaults to `1`, will always be at least `1` for external contributions.\n\n##### Example\n\n```yml\nminApprovals: 2\n```\n\n#### `mergeMethod=rebase`\n\nThis property specifies whether to use `rebase` (default) or `merge` as the merge method.\n\n##### Example\n\n```yml\nmergeMethod: 'merge'\n```\n\n#### `reviewTeams`\n\nThis 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.\n\nIf `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`.\n\n##### Example\n\n```yml\nreviewTeams:\n- design\n- development\n```\n\n\n## Related\n\nThis app works nicely with others:\n\n* [WIP](https://github.com/apps/wip) - prevents merging of branches that you tag as _work in progress_\n* [delete-merged-branch](https://github.com/apps/delete-merged-branch) - deletes the feature branch once merged\n\nCombine these apps as needed for an excellent merge flow.\n\n\n## Setup and Run\n\n```sh\n# install dependencies\nnpm install\n\n# run the app\nLOG_LEVEL=debug npm start\n\n# test the app\nLOG_LEVEL=debug npm test\n```\n\n\n## Integrate with an Existing Probot\n\nYou can [combine this app with others](https://probot.github.io/docs/deployment/#combining-apps).\n\n```json\n{\n  \"name\": \"my-probot-app\",\n  \"private\": true,\n  \"dependencies\": {\n    \"@nikku/merge-me\": \"^0.11.0\",\n    \"probot-settings\": \"probot/settings\"\n  },\n  \"scripts\": {\n    \"start\": \"probot run\"\n  },\n  \"probot\": {\n    \"apps\": [\"@nikku/merge-me\", \"probot-settings\"]\n  }\n}\n```\n\n\n## Alternatives\n\nConsider [probot-auto-merge](https://github.com/bobvanderlinden/probot-auto-merge) if you need an app with more configuration options. It includes many of the features provided by [related apps](#related), too.\n\n\n## License\n\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnikku%2Fmerge-me","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnikku%2Fmerge-me","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnikku%2Fmerge-me/lists"}