npm コマンドの使い方まとめ:install・run・ci・update の基本
npm install # package.json の依存をインストール npm install <pkg> # パッケージを追加 npm install -D <pkg> # 開発依存として追加 npm run <script> # scripts を実行 npm ci # クリーンインストール(CI向け) npm update # パッケージを更新 npm uninstall <pkg> # パッケージを削除
npm とは
Node.js に同梱されているパッケージマネージャーです。npm install でパッケージを追加し、package.json で依存関係を管理します。
install:パッケージをインストールする
依存パッケージをすべてインストール
npm install # または npm i
package.json の dependencies と devDependencies に書かれたパッケージを node_modules/ にインストールします。リポジトリをクローンした直後に実行するコマンドです。
パッケージを追加する
npm install axios npm i axios # 短縮形
dependencies に追加されます。本番環境でも使うパッケージ(ライブラリなど)に使います。
開発依存として追加する(-D / --save-dev)
npm install -D eslint npm install --save-dev eslint
devDependencies に追加されます。テストツールやビルドツールなど、開発時にだけ使うパッケージに使います。
バージョンを指定して追加する
npm install react@18 npm install react@18.2.0
グローバルにインストールする(-g)
npm install -g typescript
プロジェクト外でも使えるようにグローバルにインストールします。CLI ツールに使いますが、プロジェクト内では devDependencies に入れる方がバージョン管理しやすいです。
run:スクリプトを実行する
package.json の scripts に定義したコマンドを実行します。
{ "scripts": { "dev": "vite", "build": "tsc && vite build", "test": "vitest", "lint": "eslint src" } }
npm run dev npm run build npm run test npm run lint
test と start は run を省略できます。
npm test # npm run test と同じ npm start # npm run start と同じ
スクリプトに引数を渡す
npm run test -- --watch
-- の後に引数を渡すと、スクリプト側のコマンドに引数が渡されます。
ci:クリーンインストール
npm ci
npm install と似ていますが、CI/CD 環境向けの厳格なインストールです。
npm install |
npm ci |
|
|---|---|---|
package-lock.json |
更新することがある | 変更しない(存在必須) |
既存の node_modules/ |
差分だけ更新 | 削除してから再インストール |
| バージョンの扱い | 条件を満たす範囲で柔軟に解決 | package-lock.json に固定 |
| 用途 | 開発環境での追加・更新 | CI/CD・本番デプロイ |
再現性が重要な場面では npm ci を使います。
update:パッケージを更新する
npm update
package.json のバージョン範囲(^・~)に従ってアップデートします。メジャーバージョンは上げません。
npm update react
特定のパッケージだけ更新します。
更新可能なパッケージを確認する
npm outdated
Package Current Wanted Latest Location react 18.0.0 18.3.1 19.1.0 myapp
Wanted:package.jsonの範囲内で最新のバージョンLatest:レジストリ上の最新バージョン(メジャー含む)
uninstall:パッケージを削除する
npm uninstall axios npm uninstall -D eslint # devDependencies から削除 npm uninstall -g typescript # グローバルから削除
list:インストール済みパッケージを確認する
npm list npm ls # 短縮形
npm list --depth=0 # 直接の依存のみ表示(推移的依存は非表示) npm list react # 特定パッケージのバージョンを確認 npm list -g --depth=0 # グローバルインストール済みを確認
その他のよく使うコマンド
init:package.json を作成する
npm init npm init -y # 質問なしでデフォルト値で作成
audit:セキュリティの脆弱性を確認する
npm audit npm audit fix # 自動修正 npm audit fix --force # メジャーバージョンアップを含む強制修正
exec / npx:インストールせずに実行する
npx create-react-app my-app npx prettier --write .
node_modules/.bin/ 内のコマンドや、インストールされていないパッケージを一時的に実行します。
まとめ
| コマンド | 説明 |
|---|---|
npm install / npm i |
依存をすべてインストール |
npm install <pkg> |
パッケージを追加(dependencies) |
npm install -D <pkg> |
開発依存として追加(devDependencies) |
npm install -g <pkg> |
グローバルにインストール |
npm run <script> |
scripts を実行 |
npm ci |
クリーンインストール(CI向け) |
npm update |
パッケージを更新 |
npm outdated |
更新可能なパッケージを確認 |
npm uninstall <pkg> |
パッケージを削除 |
npm list --depth=0 |
インストール済みパッケージ一覧 |
npm audit |
脆弱性チェック |
npx <pkg> |
インストールせずに一時実行 |
npm のバージョン確認方法は「npm バージョン確認:コマンドと確認方法まとめ」を参照してください。
pnpm との違いについては「pnpmとnpmの違い:コマンド対応表とインストール方法」も参照してください。