gulp-release-easy
A gulp plugin that helps you automate releasing and publishing to NPM easy than ever! All you need to do is issue gulp release
. I've used it in my pet project as well as used it to publish itself!
Usage
npm install gulp-release-easy --save-dev
var gulp = ;gulp;
You can also pass along a config object where you can define your chosen release branch (by default, it will be 'master');
// Set 'develop' as the release branchgulpreleaseBranch:'develop';
See more about what you can pass in the config object below.
All you need to know is just simply issue:
gulp release
Instead of manually: pull changes from release branch -> bump version -> commit -> tag -> push to release branch -> publish to NPM
or a full version:
gulp release -b my-release-branch --minor --bower
Options
Instead of typing parameters every time you issue gulp release
, you can set them by default by passing the config object and then simply gulp release
:
// all the properties below are optionalgulp releaseBranch:'develop' // Set 'develop' as the release branch 'master' is default releaseType: 'minor' // or 'marjor' or 'patch' (which is default) excludeTask: 'publish' // this will do all the tasks but NOT publishing to NPM origin: 'origin' //origin branch, default is 'origin'. Command line equivelence is `-o origin-branch-name` pkg: 'package.json';
If you want instead want to type in the verbose version of your gulp release
, you can pass along some parameters, this will override the config options you passed in gulpfile.js
:
option | meaning |
---|---|
gulp-release -b branch-name | your release branch |
gulp-release --minor (or -v minor) | release minor (the same thing with patch and major, default is patch) |
gulp-release --bower (or --npm or --node) | choose the package file that you want to update (either npm or bower, default is npm) |
gulp-release -x taskName | exclude the task during the releasing process, currently only 'publish' can be exceluded |
run gulp -T
for a list of available commands