2017-03-14 25 views
1

npmをハードドライブの特定の部分にルーティングする方法はありますか?npmをインストールすると、ドライブのその部分にnode_moduleフォルダが作成されます。どんなプロジェクトであれ、ドライブのその部分の依存関係を探します。 プールのようにすべてのプロジェクトに依存します。私は同様の依存関係を持つ2つのプロジェクトを持っている場合、依存関係がプールで利用できるようになるので、プロジェクトごとにnpmインストールを実行すると、ドライブに余分なスペースが必要になる

は、その後、私は1つのプロジェクトだけでnpm installする必要があり、別のプロジェクトでnpm installを行う必要がちょうど

npm startは、 ありがとうありませんInzamam Malik

+1

node_modulesディレクトリを別の場所にシンボリックリンクしてnpm installを実行してみてください。 –

+0

申し訳ありませんがあなたのポイントを取得していない@MananVaghasiya –

+0

あなたはhttps://www.npmjs.com/package/symlinkについて話していますか? –

答えて

1

linkオプションを使用して、説明しているものに近いものを達成できます。 https://docs.npmjs.com/misc/config#linkから

:適しグローバルにインストールパッケージがある場合

trueの場合は、ローカルインストールはリンクします。

これは、ローカルインストールによって、同時にグローバルスペースにインストールされる可能性があることに注意してください。 2つの条件のいずれかが満たされた場合、リンクにのみ行われます。

  • パッケージがすでにグローバルにインストールされていない、または
  • グローバルインストールされているバージョンは、ローカルにインストールされているバージョンと同じです。

だからあなたはまだ、各プロジェクトのnode_modulesでいくつかのファイルを持っていますが、同じ大きさのフォルダを持つべきではありません。実行して、上でこの動作を有効にするには

npm config set link -g 

を編集:あなたがnpm installを実行しているとnode_modulesフォルダを避けることができる方法はありません。 Node.jsは常にnode_modulesで依存関係を調べます(この動作はnpmより前です)。 linkオプションを指定すると、npmは共通プールを指すnode_modulesにシンボリックリンクを作成します。これでディスクの使用量は少なくなりますが、node_modulesを削除することはできません。

+0

これを実行した後、 'npm install'はプロジェクトの' node_modules'フォルダを作成しません。プール? –

+0

'npm install'は常にプロジェクト内に' node_modules'フォルダを作成します。 Node.jsが動作するため、これを回避する方法はありません。 'link'オプションは' node_modules'フォルダのサイズを小さくします(大部分はシンボリックリンクを含んでいます)。 – RyanZim

関連する問題