📦

npm-check-updatesでパッケージを一括更新する

に公開

npm-check-updatesとは

npm-check-updates(通称ncu)は、package.jsonの依存パッケージを最新バージョンに更新するためのツールです。
通常のnpm updateコマンドでは、package.jsonのバージョン範囲内でしか更新されませんが、ncuを使うとメジャーバージョンアップも含めて最新版に更新できます。

インストール

グローバルにインストールします。

npm install -g npm-check-updates

基本的な使い方

更新可能なパッケージを確認

まずは更新可能なパッケージを確認します。

ncu

このコマンドで、現在のバージョンと最新バージョンが表示されますが、package.jsonは変更されません。

package.jsonを更新

package.jsonを最新バージョンに更新します。

ncu -u

または

ncu --upgrade

このコマンドを実行すると、package.jsonが最新バージョンに書き換わります。

パッケージをインストール

package.jsonが更新されたら、実際にパッケージをインストールします。

npm install

よく使うオプション

特定のパッケージのみ更新

ncu -u パッケージ名

例:

ncu -u react react-dom

インタラクティブモード

更新するパッケージを選択できます。

ncu -i

特定のパターンに一致するパッケージを更新

ncu -u --filter "パターン"

例:

ncu -u --filter "@types/*"

メジャーバージョンのみ、マイナーバージョンのみ更新

# メジャーバージョンのみ
ncu -u --target major

# マイナーバージョンのみ
ncu -u --target minor

実行例

$ ncu
Checking /path/to/project/package.json
[====================] 15/15 100%

 express           ^4.17.1  →  ^4.18.2
 react             ^17.0.2  →  ^18.2.0
 typescript         ^4.5.5  →  ^5.0.4

Run ncu -u to upgrade package.json
$ ncu -u
Upgrading /path/to/project/package.json
[====================] 15/15 100%

 express           ^4.17.1  →  ^4.18.2
 react             ^17.0.2  →  ^18.2.0
 typescript         ^4.5.5  →  ^5.0.4

Run npm install to install new versions.

注意点

  • メジャーバージョンアップは破壊的変更を含む可能性がある
  • 本番環境に適用する前に、開発環境やステージング環境でテストすることを推奨
  • package-lock.jsonやyarn.lockも更新されるため、チーム開発では事前に共有する必要がある

まとめ

npm-check-updatesを使うことで、パッケージの更新作業を効率化できます。
定期的に依存パッケージを最新に保つことで、セキュリティの向上や新機能の恩恵を受けられます。

GitHubで編集を提案

Discussion