A better
npm publish
- Ensures you are publishing from the
master
branch - Ensures the working directory is clean and that there are no unpulled changes
- Reinstalls dependencies to ensure your project works with the latest dependency tree
- Runs the tests
- Bumps the version in package.json and creates a git tag
- Publishes the new version to npm, optionally under a dist-tag
- Pushes commits and tags to GitHub
$ npm install --global np
$ np --help
Usage
$ np [major | minor | patch | premajor | preminor | prepatch | prerelease | <version>] (Default: patch)
Options
--any-branch Allow publishing from any branch
--skip-cleanup Skips cleanup of node_modules
--yolo Skips cleanup and testing
--tag Publish under a given dist-tag
Examples
$ np
$ np major
$ np 1.0.2
$ np 1.0.2-beta.3 --tag=beta
You can use any of the test/version/publish related npm lifecycle hooks to add extra behavior.
MIT © Sindre Sorhus