pnpm add <pkg>
Instalar el paquete y cualquier paquete que dependa de el. Por defecto, cualquier nuevo paquete se instala como una dependencia de producción.
TL;DR
Comando | Significado |
---|---|
pnpm add sax | Se guarda endependencies |
pnpm add -D sax | Se guarda endevDependencies |
pnpm add -O sax | Se guarda enoptionalDependencies |
pnpm add -g sax | Instalar el paquete globalmente |
pnpm add sax@next | Se instala desde el tagnext |
pnpm add sax@3.0.0 | Especificar versión3.0.0 |
Ubicaciones de paquetes soportados
Instalar desde el registro de npm
El comandopnpm add package-name
instalará la versión más reciente del paquetepackage-name
desde elregistro de npm por defecto.
Si se ejecuta en el workspace, el comando primero intentara verificar si otros proyectos en el workspace usan el paquete especificado. Si es así, se instalará el rango de versión ya previamente instalado.
También puede instalar paquetes con:
- etiqueta:
pnpm add express@nightly
- versión:
pnpm add express@1.0.0
- rango de versiones:
pnpm add express@2 react@">=0.1.0 <0.2.0"
Instalar desde el espacio de trabajo
Tenga en cuenta que al añadir dependencias y trabajar dentro de unespacio de trabajo, los paquetes se instalarán desde las fuentes configuradas, dependiendo de silink-workspace-packages
está configurado, y el uso de la opciónworkspace: range protocol
.
Instalar desde el sistema de archivos local
Hay dos formas de instalar desde el sistema de archivos local:
- desde un archivo tarball (
.tar
,.tar.gz
o.tgz
) - de un directorio
Ejemplos:
pnpm add ./package.tar.gz
pnpm add ./some-directory
Cuando se instala desde un directorio, se creará un enlace simbólico en elnode_modules
del proyecto, por lo que es lo mismo que ejecutarpnpm link
.
Instalar desde tarball remoto
El argumento debe ser un URL obtenible que empiece por "http://" o "https://".
Ejemplo:
pnpm add https://github.com/indexzero/forever/tarball/v0.5.6
Instalar desde el registro de npm
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
Install from a Git repository using semver
You can specify version (range) to install using thesemver:
parameter. Por ejemplo:
- 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
Install from a subdirectory of a Git repository
You may also install just a subdirectory from a Git-hosted monorepo using thepath:
parameter. Por ejemplo:
pnpm add RexSkz/test-git-subdir-fetch#path:/packages/simple-react-app
Install from a Git repository via a 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
Install from a Git repository using hosting providers shorthand
You can use a protocol shorthand[provider]:
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 omitted, it defaults togithub:
.
Install from a Git repository combining different parameters
It is possible to combine multiple parameters by separating them with&
. This can be useful for forks of monorepos:
pnpm add RexSkz/test-git-subdir-fetch.git#beta\&path:/packages/simple-react-app
Installs from thebeta
branch and only the subdirectory at/packages/simple-react-app
.
Opciones
--save-prod, -P
Instala los paquetes especificados como una dependencia común:dependencies
.
--save-dev, -D
Instala los paquetes especificados comodevDependencies
.
--save-optional, -O
Instala los paquetes especificados comooptionalDependencies
.
--save-exact, -E
Las dependencias guardadas se configurarán con una versión exacta en lugar de utilizar el operador de rango semver por defecto de pnpm.
--save-peer
El uso de--save-peer
agregará uno o más paquetes apeerDependencies
y los instalará como dependencias de desarrollo.
--ignore-workspace-root-check
Se produce un error al agregar una nueva dependencia al paquete del espacio de trabajo raíz, a menos que se utilice el parámetro--ignore-workspace-root-check
o-w
.
Por ejemplo,pnpm add debug -w
.
--global, -g
Instala un paquete globalmente.
--workspace
Solo añade la nueva dependencia si se encuentra en el espacio de trabajo.
--allow-build
Added in: v10.4.0
A list of package names that are allowed to run postinstall scripts during installation.
Ejemplo:
pnpm --allow-build=esbuild add my-bundler
This will runesbuild
's postinstall script and also add it to thepnpm.onlyBuiltDependencies
field ofpackage.json
. So,esbuild
will always be allowed to run its scripts in the future.