エンターテイメント!!

遊戯王好きのJavaエンジニアのブログ。バーニングソウルを会得する特訓中。

npmまとめ

npmとは

Node.jsの管理するためのツール。
Node.jsには多種多様なモジュールが存在するため、管理ツールとして作られた。

覚えるべきコマンド−基本編

初期化

npm init

プロジェクトを初期化するためのコマンド。
依存関係や汎用的な基本情報をもったpackage.jsonを作成するために使う。

いちいち決めるのが面倒くさい場合は、コマンドオプションとして-yをつければ、枠だけ用意されているpackage.jsonが作成される。

npm init -y

パッケージのダウンロード

npm install {モジュール名}

Node.jsで公開されているモジュールをインストールする。
モジュール名を記載しない場合、コマンド実行したときのカレントディレクトリにあるpackage.jsonを元に、ライブラリをダウンロードする。
また、コマンドオプションとして、--save--save-devを使用すると、インストールしたモジュールがpackage.jsonに記述される。

インストールしたモジュールは、プロジェクト内でしか使えない。
しかし、Typescriptなどの汎用的なものをどこでも使えるようにしたい場合、-gオプションを付与して、グローバル環境にインストールすることもできる。 グローバル環境にインストールされると、パスが通るため、何処でもコマンド実行することができる。
しかし、多様は厳禁!
グローバル環境にインストールしすぎると、管理ができなくなり、意図しない問題が発生する可能性が高い。
プログラミングと同じく、公開範囲は最小限にしておくのがいい。

覚えるべきコマンド−応用編

Help

このコマンドがなんなのか忘れるときがある。
IT系は覚えることがたくさんあるので、思い出すための方法は必ず覚える必要がある。
全部は覚える必要はない。
npmの全てのオプションは、以下のコマンドで確認できる。

npm help

特定のコマンドを知りたい場合は、下記のコマンドで確認できる

npm help {コマンド}

例えば、installコマンドを確認したい場合、npm help installとすることで確認できる。

オートコンプリート

これも覚えることを減らすために必要になる。開発効率をあげるためにも必須。

npm completion >> ~/.bashrc
source ~/.bashrc

これをすると、コマンドの入力補完が効くようになる。
例えば、npm insでTABを押すと、npm installに補完される。

npmのバージョン管理

今のバージョン確認

npm -v

npmのアップデート

npm install -g npm

npmでnpmをインストールできるというのは、奇妙な話だができる。 npmを複数バージョン管理したい場合、nvmなどを使う必要があるが、今回の説明からは省略する。

npmのデフォルト設定

npm install -yで設定されるデフォル値などを設定することができる。

npm config set init.auther.name {名前}

パッケージの検索

npms

npms

プロジェクトをコミット頻度、カバレッジ、ドキュメント量などの複数の質でスコアのランク付けをしてくれる。

npm Discover

npm Discover · see what everyone else is using

パッケージと一緒に使われるパッケージを検索できる。

パッケージ管理

インストールしたものを確認する。

npm list

ただし、サブパッケージをすべて表示するため、情報過多で見たい情報が見れない時がある。
そんなときは、階層制限をかけてあげるといい。

npm list --depth=0

上記コマンドで、最上位階層のパッケージ内容だけ確認できる。

ホームページ

パッケージのドキュメントが見たい場合は、ヘルプを見てもいいが、より詳しい情報はホームページにあることが多い。
その場合は、下記のコマンドで見れる。

npm home {パッケージ}

Githumリポジトリ

npm repo {パッケージ}

ドキュメント参照

npm docs {パッケージ}

現在のバグ一覧

npm bugs {パッケージ}

パッケージの削除

個別で取り除く場合

npm uninstall {パッケージ}

全部取り除く場合

npm prune

依存パッケージのバージョン固定

デフォルト設定のnpmだと、npm install --saveでは、メジャーバージョンの番号が固定される。

マイナーバージョンを固定したい場合
npm config set save-exact true

もしくは、shrinkwrapを使う。

npm shrinkwrap

shrinkwrapを使った場合、カレントディレクトリにnpm-shrinkwrap.jsonファイルが生成される。
このファイルは、package.jsonがあるときにnpm installしても、npm-shrinkwrap.jsonの内容でインストールが行われる。

更新されたパッケージを見つける

npm outdated

パッケージの使えるバージョン確認

npm view {パッケージ} versions