[npm & Bower] Node を Homebrew でインストールした場合でも npm をうまく利用したい(local install 編)
過去に断片的に調べて利用していたものの、色々と混乱したのであらためて再調査。
以下の続きだが、本エントリは Homebrew と関係がない。
以下が参考になる。
Contents
init
ローカルプロジェクトは package.json で管理すると便利。
プロジェクトディレクトリで npm init
を実行するとひな型を作成できる。
--yes
で入力を省略できる。
% npm init --yes
Wrote to /Users/****/projects/test_npm/package.json:
{
"name": "test_npm",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "MIT"
}
.npmrc に初期値を登録する
なお .npmrc で npm init
時の初期値を指定できる。
% npm set init.license "MIT"
とすると、$HOME/.npmrc に以下が書き込まれる。
init.license=MIT
前述 npm init --yes
の通り、初期値が入力されている。
install
npm search
でパッケージを探し、npm info
でバージョンなどを確認できる。
% npm search grunt-cli
% npm info grunt-cli |less
npm install
でインストール。
% npm install --save-dev grunt-cli@0.1.13
@x.x.x
でバージョンの指定も可能。
--save
, --save-dev
オプションを付け、package.json にインストールしたパッケージとバージョンを書き込むべき。
update
npm outdated
で調べて package.json を書き換える。
% npm outdated
Package Current Wanted Latest Location
babel 5.8.34 5.8.34 6.3.13 test_es6
babel-core 5.8.25 6.3.17 6.3.17 test_es6
grunt-babel 5.0.3 5.0.3 6.0.0 test_es6
実行。
% npm update
package.json 内のパッケージを最新バージョンへ一括で書き換える
npm-check-updates を利用すると、まとめて最新バージョンへ書き換えできる。
uninstall
--save
, --save-dev
オプションを付けて実行すると、package.json の情報も削除してくれる。
% npm uninstall --save-dev grunt-cli
prune
install, update などでたまったパッケージを掃除する。
%npm prune
local install したパッケージを cli から利用する
ローカルディレクトリのパスを追加するか、パスを指定して実行をする。
npm bin
コマンドでパスを取得できるので、これを利用する。
以下を指定し、
alias npm-exec='PATH=$(npm bin):$PATH'
ファイルを読込直す。
% source ~/.zshenv
bundle exec
ライクに npm-exec
で実行。
% npm-exec babel version
5.8.34 (babel-core 5.8.25)
としたが、イマイチうまくいかないので保留。
run-script
package.json に簡単なスクリプトを登録できる。