https://github.com/vladholubiev/gh-shipit
Automate GitHub releases, PRs, labels, release notes
https://github.com/vladholubiev/gh-shipit
cli git-flow github nodejs npm-package pull-requests release
Last synced: 11 months ago
JSON representation
Automate GitHub releases, PRs, labels, release notes
- Host: GitHub
- URL: https://github.com/vladholubiev/gh-shipit
- Owner: vladholubiev
- License: mit
- Created: 2018-01-27T18:58:15.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2022-06-01T14:53:51.000Z (about 4 years ago)
- Last Synced: 2025-04-06T05:51:15.616Z (about 1 year ago)
- Topics: cli, git-flow, github, nodejs, npm-package, pull-requests, release
- Language: TypeScript
- Homepage:
- Size: 1020 KB
- Stars: 19
- Watchers: 3
- Forks: 3
- Open Issues: 32
-
Metadata Files:
- Readme: readme.md
- License: license
Awesome Lists containing this project
README

[](https://circleci.com/gh/vladgolubev/gh-shipit)



## Install
```
$ npx gh-shipit
```
`node` >=16 required. [still don't know about npx?](https://medium.com/@maybekatz/introducing-npx-an-npm-package-runner-55f7d4bd282b)
## Features
### Prepare Release
- Detailed overview of all the repos in organization
- View how many commits in `develop` are ahead of `master`
- View how many commits in `master` are behind of `develop`
- View latest commit date in `develop`
- View latest version released
- View latest release draft version
- Create a release branch in git-flow style (`release/vX.x.x`)
- Open branch comparison on github in browser to decide on release name
- Create a PR from release branch to `master`
- Create Release Notes Draft
- Create `release` label in repo and assign it to PR
- Open created PR in browser
### Merge [Renovate bot](https://renovate.whitesourcesoftware.com/) PRs in bulk
- Fuzzy search with autocomplete
- Approve & merge PRs in parallel, 10 merges concurrently
- Print number of merged PRs and URLs to PRs failed to merge
## Usage
Follow interactive instructions
```bash
$ shipit
```
## Publish
```sh
$ git checkout master
$ yarn version
$ yarn publish
$ git push origin master
```
## License
MIT © [Shelf](https://shelf.io)