search
LoginSignup
61

More than 5 years have passed since last update.

posted at

[npm] npmコマンドの使い方

インストール済みのパッケージリストを取得

npm list --depth=0 -g

or

npm ls --depth=0 -g

-g はグローバルオプションである。以下同様。

バージョンを指定してインストール

$ npm install <package name>@<package version> -g

例:

$ npm install cordova@5.4.1

インストール済みのパッケージを更新する

$ npm update <package name>@<package version>

@<package version> を省略すると、そのパッケージの最新版に更新される。

例:

$ npm update antd@3.0.0

最新バージョンがあるかどうかを確認する

$ npm outdated
Package                 Current  Wanted  Latest  Location
...
jquery                    2.2.2   2.2.4   3.1.1  jquery
...

各パッケージに対し、 Current, Wanted, Latest という3つの列が表示されている。
それぞれの列の意味は以下の通りである。

  • Current:現在インストールされているバージョン。
  • Wanted:存在するバージョンのうち、 package.json に記載された semver 条件を満たす最新のバージョン。
  • Latest:そのパッケージの最新バージョン。

一括更新する

npm update コマンドで outdated のパッケージを一括更新できる。

$ npm update

が、npm update コマンドには 2つの問題点がある。

  • package.json に記載された semver のルールに従うため、^ つきの記載だとメジャーバージョンのアップデートまでは行ってくれない。
  • package.json ファイルを更新してくれない。

そこで、npm-check-updates と言うツールが登場する。
以下、その使い方を簡単に紹介する。

npm-check-updates

npm-check-updates をインストール

$ npm install -g npm-check-updates

最新バージョンがあるかどうかを確認する

上記で紹介された $ npm outdated に該当する。

$ ncu

注: $ npm-check-updates でもOK。

package.jsonの更新

$ ncu -u

実際のパッケージを一括アップデートする

上では package.json が更新されただけ。

$ npm update

特定のパッケージを指定

$ ncu -u {package_a}

スペース区切りで複数のパッケージ一度に指定できる。

$ ncu -u {package_a} {package_b}

特定のパッケージを除外

$ ncu -x {package_a}

特定のパッケージを除外しつつその他のパッケージをアップデートしたいときには、
下記のようにコマンドを入力する。

$ ncu -u -x {package_a}

正規表現を使う

頭に「npm-」が付いているものだけを確認したい場合は、

$ ncu '/^npm-.*$/'

参考

http://phiary.me/npm-package-version-info-install/
http://dackdive.hateblo.jp/entry/2016/10/10/095800
https://www.nxworld.net/services-resource/npm-check-updates.html

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
61