#雑感
今更だが久しぶりにnpmを触ったので、個人的に調べたことをまとめる。yarnというnpm代替となるパッケージマネージャーが出たそうなので今度試してみたいと思います。
#コマンドについて
※ 基本的に下記のコマンドはローカル。グローバルに行いたい場合、npmコマンドに、 -g をつけて下さい
##package.jsonの生成
- 対話形式でpackage.jsonを生成する
npm init
- 対話形式の答えを全部yesでpackage.jsonを生成する
npm init -yes
##バージョン確認
- バージョン確認
npm -v
- node.jsのバージョン確認
node --version
- node.jsのバージョン確認
##インストール、アップデート
- パッケージのインストール
npm install
- 個別にパッケージのインストール
npm install [package_name]
- パッケージをインストールし、package.jsonへ書き込む
npm install --save [package_name]
- バージョンを固定してインストール
npm install [package_name] --save --save-exact
- package.jsonのdevDependenciesにバージョン付きで書き込む
npm install --save--dev [package_name]
devDependenciesというのは開発時だけ利用するライブラリのversionを管理する。ライブラリとして公開するようなprojectだと、--saveになる。dependenciesとdevDependenciesの使い分けは、パッケージやプロジェクトが実行時に必要となるのをdependenciesに設定し、ビルド時だけしか使われないようなビルドツール・ライブラリなどは devDependencies に入れておくといいかも。
##アンインストール
- パッケージのアンインストール
npm uninstall [package_name]
- パッケージをアンインストールしてpackage.jsonのdependenciesからも削除
npm uninstall package --save
- パッケージをアンインストールしてpackage.jsonのdevDependenciesからも削除
npm uninstall package --save--dev
##アップデート
- npm自体のアップデート
npm update -g npm
- パッケージのアップデート
npm update
##パッケージの確認、整理
- インストールされたパッケージを確認する
npm ls
- 依存パッケージなしでインストールされたパッケージを確認する
npm ls --depth=0
- パッケージの検索
npm search [package_name]
- パッケージの詳細を表示
npm show package
- 最新になっていないパッケージを一覧表示
npm outdate
- npmのヘルプ
npm help
##設定値
- npmの設定値を簡易に確認
npm config ls
- npmの設定値を詳細に確認
npm config ls -l
#ファイルパス関連
##マニュアル(Man)について
グローバルは/usr/local/share/man、ローカルだとインストールされない。
##実行パスについて
-
グローバル
/usr/local/bin
-
ローカル
./node_modules/.bin
グローバルの場合はパスが通っているだろうが、ローカルはパスを通す必要あり。
##ディレクトリについて
-
基本的な説明を読む
npm help npm-folders
-
インストールディレクトリを確認
npm root
-
コマンドディレクトリを確認
npm bin
#補足
##Gitを使用するとき
node_modulesはnpm installで自動生成されるディレクトリなので、Gitで管理する必要なし。以下を.gitignoreに追加する。
node_modules/
##パッケージのバージョン固定について
shrinkwrapで別ファイル生成か、--exact指定でパッケージインストール時に固定するかの2択。1ファイルで済むので、基本的に後者を選択する。
デフォルトでバージョン固定、package.jsonへの書き込みをする
npm config set save=true
npm config set save-exact=true
##npmの設定値
##その他