npm-version-nonroot
v1.0.0
Published
npm-version for packages in subdirectories of git repositories
Downloads
3
Readme
npm-version-nonroot
npm version
for packages in subdirectories of git repositories
Use case
I've started building projects that utilize Docker and organizing the repositor ies based on the Docker containers. A simple project might have the following structure:
project
├── db
| ├── Dockerfile
| └── schema.sql
├── web
| ├── Dockerfile
| ├── package.json
| └── server.js
├── docker-compose.yml
└── README.md
Because package.json
is not in the root of the git repository, npm vesion
will not perform any of the git-related commands, such as committing and tagging. This module makes npm version
work as expected.
Usage
Add nvn-preversion
and nvn-version
as part of npm's preversion
and version
scripts, respectively.
"scripts": {
"pre-version": "nvn-preversion",
"version": "nvn-version"
}
Implementation details
nvn-preversion
runs the following steps. All differences from standard npm preversion
behavior are noted.
- Check if the git working directory is clean.
npm version
would normally do this before running thepreversion
script.nvn-version
does not yet support the--force
flag to prevent this check.
nvn-version
runs the following steps. All differences from standard npm version
behavior are noted:
- Update
npm-shrinkwrap.json
if it exists.
npm version
would normally run this, and all following steps after theversion
script and before thepostversion
script.
- Commit the changes to git.
- Create the tag in git.
nvn-version
does not yet check for an existing tag of the same name.
License
Copyright Scott González. Released under the terms of the MIT license.