In these times where NPM scripts are becoming more and more popular, I want to show you an unknown command of NPM : npm version.
NPM comes with lots of bundled commands, I let you tap “npm –help” in your favorite terminal to show all of them.
The purpose of npm version is to change the version of a project. You know, when you open a package.json file, one of the first properties is often the current version of the project :
For instance, when you increment the version because you have a fix, you can use
npm version patch, if you want to update the minor version, use
npm version minor or, to increment the major number use
npm version major. Simple, is it not ?
Moreover, if you are in a git repository it will also automatically create a version commit and tag.
But the most interesting thing for us, is the usage of
Indeed, like all commands in NPM,
npm version has at its disposal, a
pre hook executed before the command and a
post hook executed after. For example, if I want to execute something after I pumped the version, I just have to add this to my package.json :
Above, we automatically push commits and tags on remote origin after bumping the version. Better, use the
preversion to run your test before tagging :
As you can see above, in the complete
script property used in the JS-Republic website,
npm test is called in
preversion hook to verify if the build is not broken.
Simple and powerful, this command available out of the box in NPM could become your next friend for smooth and easy releases. To find more information about
npm version you can go there.
By Mathieu Breton