web-dev-qa-db-ja.com

npmはパッケージをキャッシュしますか?

私のサーバーでは、npmはパッケージをキャッシュせず、キャッシュディレクトリは空です。

#www@iZ2zefuufnen6rfx7c81u7Z:~/.npm$ nvm current
v9.4.0
# www@iZ2zefuufnen6rfx7c81u7Z:~/.npm$ npm config get cache
/home/www/.npm
# www@iZ2zefuufnen6rfx7c81u7Z:~/.npm$ ls
anonymous-cli-metrics.json  _cacache  _locks

私のnpm設定

www@iZ2zefuufnen6rfx7c81u7Z:~/.npm$ npm config ls
; cli configs
metrics-registry = "https://registry.npmjs.org/"
scope = ""
user-agent = "npm/5.6.0 node/v9.4.0 linux x64"

; node bin location = /home/www/.nvm/versions/node/v9.4.0/bin/node
; cwd = /home/www/.npm
; HOME = /home/www
; "npm config ls -l" to show all defaults.

=====update

[email protected]の後に、npmは_cacache . https://docs.npmjs.com/cli/cache という名前の設定されたキャッシュ内の不透明なディレクトリにキャッシュデータを保存することがわかりました

www@iZ2zefuufnen6rfx7c81u7Z:~/.npm$ du -h --max-depth=1
56M ./_cacache
4.0K    ./_locks
8.0K    ./node-sass
56M .

_cacacheディレクトリはわずか56MBです

www@iZ2zefuufnen6rfx7c81u7Z:~/.npm$ npm cache verify
Cache verified and compressed (~/.npm/_cacache):
Content verified: 1164 (39196729 bytes)
Index entries: 1167
Finished in 1.321s

====update

私のプロジェクトの別のテスト。実行後rm -rf node_modules && npm clean cache --force、次にrun npm install 171.389sに1551パッケージを追加しました。その後 rm -rf node_modules && npm install 152.378sに1551パッケージを追加しました。 npmは本当にキャッシュを使用しますか?

11
feng ce

デフォルトでは、グローバルパッケージキャッシュが使用されます。最初に「npmキャッシュクリーン」を実行すると、インストールタイミングの違いに気付くはずです。グローバルにインストールされていないものはすべてクリーンアップされます。明示的に "npm uninstall"を実行する必要があります

3
iHazCode