Aide-mémoire des commandes npm

Aide-mémoire npm : install, ci, update, run, semver | We.Inc

Recherchez toutes les commandes npm du quotidien avec leurs options, voyez en quoi npm ci diffère de npm install, et testez une plage semver comme ^1.2.3 ou ~0.4 face à une version, dans votre navigateur.

Aide-mémoire des commandes npm

Les commandes npm que vous taperez le plus sont npm install pour ajouter des paquets, npm ci pour des installations propres en CI, npm update pour monter de version dans vos plages, npm uninstall pour supprimer un paquet, et npm run suivi d'un nom de script. Cherchez dans le tableau complet ci-dessous, puis testez ce qu'autorise une plage avec caret ou tilde.

Les cinq à connaître en premier

Les listes de commandes en ligne s'arrêtent souvent au nom de chaque commande. Celle-ci ajoute les options vraiment utilisées, les alias, ce que chaque commande écrit dans package.json et dans le lockfile, ainsi qu'un testeur de plages pour voir quelles versions un caret, un tilde ou une plage en x acceptent réellement.

Questions fréquentes

Quelle est la différence entre npm install et npm ci ?

npm install résout les versions depuis package.json, peut mettre à jour le lockfile et conserve le node_modules existant. npm ci exige un lockfile, supprime d'abord node_modules, installe exactement ce que liste le lockfile, échoue s'il ne concorde pas avec package.json, et n'écrit jamais aucun des deux fichiers.

npm update modifie-t-il package.json ?

Pas par défaut. La documentation npm indique save à false pour npm update, donc seuls node_modules et le lockfile changent. Passez --save si vous voulez que les nouvelles versions soient réécrites dans package.json.

Que signifie le caret dans ^1.2.3 ?

Il autorise tout changement qui conserve le premier nombre non nul en partant de la gauche. ^1.2.3 accepte les 1.x à partir de 1.2.3 mais pas 2.0.0. En dessous de 1.0.0, il est plus strict : ^0.2.3 n'accepte que les correctifs 0.2.x.

Comment passer une option au script derrière npm run dev ?

Placez -- devant, par exemple npm run dev -- --port 4000. Tout ce qui suit les deux tirets est transmis au script au lieu d'être lu par npm.

Que signifient Wanted et Latest dans npm outdated ?

Wanted est la version la plus haute qu'autorise la plage de votre package.json. Latest est la version que l'auteur du paquet a marquée comme latest sur le registre. Quand Latest dépasse Wanted, l'obtenir implique de modifier la plage.

Install, ci et update n'ont pas le même rôle

Les scripts sont des raccourcis avec quelques règles

Les plages semver expliquées

À quoi correspond chaque plage (règles node-semver, utilisées par npm)

Scripts de package.json

Un bloc scripts typique

prebuild s'exécute automatiquement avant build. Les binaires locaux comme vite sont résolus depuis node_modules/.bin.

Étape d'installation pour la CI

Installation propre et reproductible, un build, puis un contrôle de sécurité qui n'échoue que sur les problèmes graves.

Initialisation

Créer un package.json avec les réponses par défaut.

Installation

Installer tout ce qui est listé dans package.json. Les alias incluent npm i et npm add.

Installation

Ajouter un paquet aux dependencies et au lockfile ; l'enregistrement est activé par défaut.

Installation

Enregistrer dans les devDependencies (forme longue --save-dev).

Installation

Enregistrer une version exacte au lieu d'une plage caret (--save-exact).

Installation

Enregistrer dans les optionalDependencies (--save-optional).

Installation

Installer sans l'inscrire dans package.json.

Installation

Installer globalement, dans le dossier prefix de npm plutôt que dans le projet.

Installation

Ignorer les devDependencies, par exemple sur un serveur de production.

Installation

Ignorer les conflits de peer dependencies comme le faisaient les anciennes versions de npm.

Installation

Installation propre depuis le lockfile : supprime node_modules, n'écrit jamais package.json ni le lockfile. Alias npm clean-install.

Mise à jour

Passer les paquets aux versions les plus récentes qu'autorisent leurs plages. Alias up et upgrade.

Mise à jour

Idem, et réécrire les nouvelles versions dans package.json.

Mise à jour

Mettre à jour les paquets globaux vers leur tag latest.

Mise à jour

Passer au tag latest même au-delà d'une version majeure.

Mise à jour

Afficher Current, Wanted et Latest pour chaque dépendance.

Suppression

Supprimer un paquet et son entrée dans package.json et le lockfile. Alias remove, rm, r, un et unlink.

Suppression

Supprimer les fichiers mais garder l'entrée dans package.json.

Suppression

Supprimer un paquet global.

Scripts

Lister tous les scripts de package.json.

Scripts

Lancer le script dev, généralement un serveur de développement.

Scripts

Transmettre les options placées après -- au script plutôt qu'à npm.

Scripts

Ne rien faire, sans échouer, quand le script n'existe pas.

Scripts

Lancer le script start ; fonctionne aussi pour test, stop et restart sans run.

Scripts

Lancer pretest, test et posttest dans l'ordre.

Scripts

Exécuter le binaire d'un paquet sans l'installer globalement.

Sécurité

Demander au registre les vulnérabilités connues dans votre arbre de dépendances.

Sécurité

Appliquer les correctifs qui restent dans vos plages déclarées.

Sécurité

Autoriser les correctifs hors de vos plages, y compris les versions majeures. Relisez les changements.

Sécurité

Ne sortir en erreur que pour les problèmes élevés ou critiques, pratique en CI.

Inspection

Afficher l'arbre des dépendances installées.

Inspection

Lister les versions publiées d'un paquet.

Inspection

Afficher le dossier dans lequel s'installent les paquets globaux.

Workspaces

Lancer un script dans un workspace (--workspace=a).

Workspaces

Lancer un script dans tous les workspaces.

Rechercher des commandes npm

Rechercher des commandes

save, global, lock, script

Filtrer par groupe

Toutes

Commandes et options npm

Commande

Groupe

Ce qu'elle fait

{n} commandes affichées

Aucune commande ne correspond à cette recherche.

Copier

Testeur de plages semver

Plage

Version

La plage {r} correspond à {e}, donc la version {v} la satisfait.

La plage {r} correspond à {e}, donc la version {v} ne la satisfait pas.

Saisissez une plage comme ^1.2.3 et une version complète comme 1.4.0.

Commencer gratuitement · Sans carte bancaire

Voir aussi: Guides

Produit

Pour qui

Fonctionnalités

Ressources

Entreprise

Plan du site