Passer au contenu principal
Version : Suivant

pnpm add <pkg>

Installe un paquet ainsi que ses dépendances. Par défaut, les paquets sont installés comme dépendance de production (aka: "dependencies").

TL;DR

CommandeSignification
pnpm add saxSauvegarde en tant que dépendance de production (dependencies)
pnpm add -D saxSauvegarde en tant que dépendance de développement (devDependencies)
pnpm add -O saxSauvegarde en tant que dépendance optionnelle (optionalDependencies)
pnpm add -g saxInstalle un package globalement
pnpm add sax@nextInstalle la version next de sax
pnpm add sax@3.0.0Installe la version 3.0.0

Dépôts de paquets supportés

Installe depuis le dépôt NPM

Par défaut, la commande pnpm add package-name va installer la dernière version de package-name depuis le dépôt NPM.

Si elle est exécutée dans un espace de travail, la commande essaiera d'abord de vérifier si d'autres projets dans l'espace de travail utilisent le package spécifié. Si c'est le cas, la version déjà installée sera utilisée.

Vous pouvez également installer des paquets en spécifiant :

  • le tag : pnpm add express@nightly
  • la version : pnpm add express@1.0.0
  • un intervalle de versions : pnpm add express@2 react@">=0.1.0 <0.2.0"

Installer depuis un workspace

À noter que lorsqu'on travaille avec un workspace, et que l'on installe des dépendances, les paquets seront installés depuis les sources configurées. Et cela en fonction de si link-workspace-packages est configuré et des intervalles de version.

Installer à partir du système de fichiers local

Il existe deux façons d'installer à partir du système de fichiers local :

  1. à partir d'une archive (.tar, .tar.gzou .tgz)
  2. à partir d'un dossier

Exemples:

pnpm add ./package.tar.gz
pnpm add ./some-directory

Lorsque vous installez à partir d'un dossier, un lien symbolique sera créé dans le dossier node_modules du projet, donc cela revient à exécuter pnpm link.

Installer à partir d'une archive distante

L'argument doit être une URL correcte commençant par "http://" ou "https: //".

Exemple:

pnpm add https://github.com/indexzero/forever/tarball/v0.5.6

Installer à partir d'un dépôt Git

pnpm add <git remote url>

Installs the package from the hosted Git provider, cloning it with Git.

You may install packages from Git by:

  • Latest commit from default branch:
pnpm add kevva/is-positive
  • Git commit hash:
pnpm add kevva/is-positive#97edff6f525f192a3f83cea1944765f769ae2678
  • Git branch:
pnpm add kevva/is-positive#master
  • Git branch relative to refs:
pnpm add zkochan/is-negative#heads/canary
  • Git tag:
pnpm add zkochan/is-negative#2.0.1
  • V-prefixed Git tag:
pnpm add andreineculau/npm-publish-git#v0.0.7
  • Version range:
pnpm add kevva/is-positive#semver:^2.0.0

Semver

You can specify version (range) to install using the semver: parameter. Par exemple:

  • Strict semver:
pnpm add zkochan/is-negative#semver:1.0.0
  • V-prefixed strict semver:
pnpm add andreineculau/npm-publish-git#semver:v0.0.7
  • Semver version range:
pnpm add kevva/is-positive#semver:^2.0.0
  • V-prefixed semver version range:
pnpm add andreineculau/npm-publish-git#semver:<=v0.0.7

Subdirectory

You may also install just a subdirectory from a Git-hosted monorepo using the path: parameter. Par exemple :

pnpm add RexSkz/test-git-subfolder-fetch#path:/packages/simple-react-app

Full URL

If you want to be more explicit or are using alternative Git hosting, you might want to spell out full Git URL:

# git+ssh
pnpm add git+ssh://git@github.com:zkochan/is-negative.git#2.0.1

# https
pnpm add https://github.com/zkochan/is-negative.git#2.0.1

Providers shorthand

You can use a protocol shorthand [provier]: for certain Git providers:

pnpm add github:zkochan/is-negative
pnpm add bitbucket:pnpmjs/git-resolver
pnpm add gitlab:pnpm/git-resolver

If [provider]: is omited, it defaults to github:.

Parameters combination

It is possible to combine multiple parameters by separating them with &. This can be useful for forks of monorepos:

# Install git branch `beta`
# Install only subfolder `/packages/simple-react-app`
pnpm add RexSkz/test-git-subfolder-fetch.git#beta&path:/packages/simple-react-app

Options

--save-prod, -P

Installe les paquets spécifiés en tant que dépendance de production (dependencies).

--save-dev, -D

Installe les paquets spécifiés en tant que dépendance de développement (devDependencies).

--save-optional, -O

Installe les paquets spécifiés en tant que dépendance optionnelle (optionalDependencies).

--save-exact, -E

Les dépendances seront installées en utilisant la version exacte au lieu de la version venant de l'opérateur semver.

--save-peer

--save-peer ajoutera un ou plusieurs paquets en dépendances partagées (peerDependencies) et les installera en tant que dépendances de développement (devDependencies).

--ignore-workspace-root-check

On ne peut pas ajouter une dépendance à la racine du workspace à moins de rajouter le paramètre suivant : --ignore-workspace-root-check ou son raccourci -W.

Par exemple, pnpm add debug -W.

--global, -g

Installe un paquet de manière globale.

--workspace

Ajoute uniquement la nouvelle dépendance si elle se trouve dans le workspace.

--filter <package_selector>

En savoir plus sur la manière de filtrer.