プロジェクトで使用している npm パッケージのアップデート方法のメモ
npm update
でアップデートnpm outdated
から手動でアップデートnpm-check-updates
を使ったアップデート
結論
新しいバージョンなど所謂バージョンを上げたいようなケースは 2 もしくは 3 で行うのが良い
1. npm update
でアップデート
npm update
では package.json
で指定されているバージョン内でしかアップデートできない
example
^
キャレット表記でバージョンが指定されている場合
// package.json "dependencies": { "dep1": "^1.1.1" "dep2": "^0.4.0" "dep3": "^0.0.3" }
npm update
した場合各パッケージは下記の範囲でアップデートされる
- dep1:
1.1.1 <= version < 2.0.0
- dep2:
0.4.0 <= version < 0.5.0
- dep3:
0.0.3 <= version < 0.0.4
~
チルダ表記バージョンが指定されている場合
// package.json "dependencies": { "dep1": "~1.1.1" "dep2": "~2.1" "dep3": "~3" }
npm update
した場合各パッケージは下記の範囲でアップデートされる
- dep1:
1.1.1 <= version < 1.2.0
- dep2:
2.1 <= version < 2.2.0
- dep3:
3 <= version < 4.0.0
cf.
2. npm outdated
から手動でアップデート
npm outdaed
で新しいバージョンが存在するパッケージのリストを表示- アップデートしたいパッケージを
npm uninstall <package name>
でアンインストール npm install <package name>
で再度パッケージをインストールする
上記の手順で最新版のパッケージが再インストールできる
特定のパッケージをアップデートしたい場合には手軽に行えるので便利、一方該当パッケージが dependencies
なのか devDependencies
なのか覚えておかなければだったり、1つ1つ手動で行わなければならないので数が多い場合は少し面倒です
cf.
3. npm-check-updates
を使ったアップデート
一括してパッケージをアップデートできるパッケージ
プロジェクト内のライブラリを丸っとアップデートしたい場合はこれを使うのが便利
npm-check-updates のインストール
global にインストールする
$ npm i -g npm-check-updates
ライブラリのアップデート手順
ncu
コマンドでアップデートできるライブラリとアップデートされるバージョンの一覧を確認ncu -u
コマンドを実行 (package.json
のバージョンが更新される)npm install
で更新されたpackage.json
に合わせた新しいバージョンがインストールされる
注意点としては ncu -u
コマンドを実行すると一括で package.json
に書かれているライブラリのバージョン情報が更新されます。特定のパッケージだけ更新したい場合は ncu
コマンドでアップデートできるバージョンを確認して手動で package.json
を更新するか、git を利用して更新しないパッケージのバージョン情報を元の状態にするなど工夫する必要があります
[参考]