gulp をグローバルとローカルにインストールする必要があるのはなぜですか? 質問する

gulp をグローバルとローカルにインストールする必要があるのはなぜですか? 質問する

2 マニュアルについてゴクリまず gulp をグローバルに (-g フラグ付きで) インストールし、次にもう一度ローカルにインストールする必要があると言われています。なぜこれが必要なのでしょうか?

ベストアンサー1

ツールをグローバルにインストールすると、ユーザーはそれをコマンド ライン ユーティリティとして使用できるようになります (ノード プロジェクトの外部を含む)。ノード プロジェクトのグローバル インストールは、展開が困難になるため、適切ではありません。

5.2以上

npxにバンドルされている ユーティリティがnpm 5.2この問題を解決します。これを使用すると、グローバルにインストールされたユーティリティと同様に、ローカルにインストールされたユーティリティを呼び出すことができます (ただし、コマンドは で始める必要がありますnpx)。たとえば、ローカルにインストールされた を呼び出す場合はeslint、次のようにします。

npx eslint .

npm < 5.2

scriptpackage.json のフィールドで使用すると、ツールとグローバルにインストールされたモジュールnpmが検索されるため、ローカル インストールで十分です。node_modules

したがって、(package.json で)次の内容に満足している場合は、

"devDependencies": {
    "gulp": "3.5.2"
}
"scripts": {
    "test": "gulp test"
}

などを実行していれば、npm run testグローバル インストールはまったく必要ありません。

sudoどちらの方法も、 は必要ないので、プロジェクトをセットアップする人を集めるのに役立ちます。またgulp、package.json のバージョンが上がると も更新されるため、プロジェクトの開発時に全員が同じバージョンの gulp を使用することになります。

補遺:

gulp は、グローバルで使用すると異常な動作をするようです。グローバル インストールとして使用すると、gulp は制御を渡すためにローカルにインストールされた gulp を探します。したがって、gulp のグローバル インストールが機能するには、gulp のローカル インストールが必要です。ただし、上記の回答は変わりません。ローカル インストールは常にグローバル インストールよりも優先されます。

おすすめ記事