Project Releaser
CLI command to make releases of your semantic versioned project a breeze.
Running project release in the root of your project:
- updates and
releaseanddevelopment(if present) branches from all remotes - merges
developmentbranch withrelease(again, ifdevelopmentis present) - tags project with next
patchversion (which is the default one,majorandminorare also available) - pushes both branches and tags to all remotes
Please, refer to Usage section for more commands and examples.
Currently branches are not configurable:
- development is
develop - release is
master
Installation
Add this line to your application's Gemfile:
gem 'project_releaser'
And then execute:
$ bundle install
project [command]
--help Print help
Available commands:
-
versionCurrent production version of the project -
nameProject name -
updateUpdates master and develop branches from all reomtes -
releaseMerges develop into master and pushes master with new version
Release Command
By default it releases next patch version of the project. To set specific version use (major, minor or patch) argument
project release major
You can also release an exact version
project release 7.10.5
TODO
- Configurable branches
- Notifications on release (i.e. to Slack)
- Improve logs