.("""") (j) (_(_ __(_ ) (n o d e) _ _ _ _ / / / (n) (s) ))`)`) ___ )L __ __ / / / n \|/ \|/ ((,(,' ((_( (( (('(| n \|/ | |
Part of the Node Water collection.
- linked-module-checker - Help node.js module development flow more freely.
Useful if you are growing your node project, with or without any other node water.
So What Does it Do?!
It checks the modules in your node_moudles directory and reports on their status,
specifically if they are linked (e.g.
npm linked) or installed (e.g.
and if they are staged to be committed by git (e.g.
The problem lmc really solves is when you are:
- npm linking your modules during development; and
- git committing your node_moudles directory; and
- bored of needing to switch to and from linked vs installed modules each time you git commit.
Is This Really A Problem I Need To Worry About?
Maybe not, but you've read this far so read on...
Splitting your node.js project into modules is a good thing. npm linking modules during development can really save you time. git committing your node_modules is also a good thing as Mikeal Rogers neatly summaries.
However if you accidentally git commit your node modules while they are npm linked your source code won't be in a great state. The symlinks created by npm link are unlikely to work on any machine other than your own so when you git clone/pull/push your project somewhere else it is unlikely to run without some manual npm tinkering first. Even worse, unless you have done some diligent publishing of your module elsewhere it may not be possible to get hold of the right version to make your project run at all.
lmc helps you avoid these problems.
Official releases can be obtained from:
- github.com - the tags section provides links to zip or tar.gz packages.
- npm - use
npm install -g linked-module-checker
The lastest developed code may node have not have been released, but can always be found from:
- github.com - the project homepage provides links to all the source code, branches and issue tracking.
See the output of lmc --help
Integration with Git
Add this to you git pre-commit:
- Isaac Z. Schlueter - https://github.com/isaacs/npm