web-dev-qa-db-fra.com

Est-ce que npm met en cache les packages?

Sur mon serveur, npm ne met en cache aucun paquet et le répertoire de cache est vide.

#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

Ma configuration 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.

===== mise à jour

J'ai constaté qu'après que [email protected] npm stocke les données de cache dans un répertoire opaque du cache configuré, nommé _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 .

Le répertoire _cacache ne fait que 56 Mo

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

==== mise à jour

Un autre test dans mon projet. Après l'exécution rm -rf node_modules && npm clean cache --force, puis run npm install ajouté 1551 packages en 171,389s. Puis rm -rf node_modules && npm install ajouté 1551 packages en 152,378s. NPM utilise-t-il vraiment le cache?

11
feng ce

Le cache de package global est utilisé par défaut. Vous devriez remarquer une différence dans vos horaires d'installation si vous effectuez d'abord un "nettoyage du cache npm". Cela nettoiera tout ce qui n'est pas installé globalement, pour ceux que vous devrez explicitement faire une "désinstallation npm"

3
iHazCode