pnpm add <pkg>
Instala um pacote e todos os outros pacotes dos quais ele depende. Por padrão, qualquer novo pacote é instalado como uma dependência de produção.
TL;DR
Comando | Significado |
---|---|
pnpm add sax | Salva em dependencies |
pnpm add -D sax | Sava em devDependencies |
pnpm add -O sax | Salva em optionalDependencies |
pnpm add -g sax | Instalar pacote globalmente |
pnpm add sax@next | Instalar a partir da tag next |
pnpm add sax@3.0.0 | Especifica a versão 3.0.0 |
Locais de pacotes suportados
Instala do registro do npm
pnpm add package-name
vai instalar a última versão do package-name
usando o registro do npm por padrão.
Se for executado de um workspace, o comando verificará se algum outro projeto do workspace utiliza o pacote especificado. Se sim, uma versão já usada será instalada.
Você também pode instalar pacotes por:
- tag:
pnpm add express@nightly
- versão:
pnpm add express@1.0.0
- intervalo de versão:
pnpm add express@2 react@">=0.1.0 <0.2.0"
Instalar a partir do workspace
Observe que ao adicionar dependências e usar um workspace, pacotes vão ser instalados a partir das fontes configuradas no workspace, dependendo se link-workspace-packages
esta ou não definido e do uso do protocolo de espaço do workspace
.
Instalar de um sistema de arquivos local
Existem duas maneiras de instalar pelo sistema de arquivos local:
- usando um arquivo tarball (
.tar
,.tar.gz
, or.tgz
) - de um diretório
Exemplos:
pnpm add ./package.tar.gz
pnpm add ./some-directory
Quando você instala a partir de um diretório, um link simbólico será criado no node_modules
do projeto atual. Então é o mesmo que executar pnpm link
.
Instalar a partir de um arquivo tarball remoto
O argumento deve começar com um URL buscável começando com "http://" ou "https://".
Exemplo:
pnpm add https://github.com/indexzero/forever/tarball/v0.5.6
Instalar de um repositório 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. Por exemplo:
- 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. Por exemplo:
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
Opções
--save-prod, -P
Instale os pacotes especificados em dependencies
como uma dependência comum.
--save-dev, -D
Instale os pacotes especificados em devDependencies
como uma dependência de desenvolvimento.
--save-optional, -O
Instala os pacotes especificados em optionalDependencies
como dependências opcionais.
--save-exact, -E
Dependências instaladas serão configuradas para usar uma versão exata em vez de usar o intervalo de versões padrão do pnpm.
--save-peer
Usar --save-peer
adicionará um ou mais pacotes a peerDependencies
e instalará-os como dependências de desenvolvimento.
--ignore-workspace-root-check
Adicionar uma nova dependência ao diretório raiz do workspace falhe, ao menos o --ignore-workspace-root-check
ou -w
flag seja usado.
Por exemplo, pnpm add debug -W
.
--global, -g
Instala um pacote globalmente.
--workspace
Adiciona a nova dependência apenas se ela for encontrada no workspace.