pnpm install
Aliases: i
pnpm install
é usado para instalar todas as dependências de um projeto.
Num ambiente de CI, a instalação falhará se um lockfile estiver presente, mas precise ser atualizado.
Dentro de uma área de trabalho, pnpm install
instala todas as dependências em todos os projetos. Se quiser desativar este comportamento, mude a configuração de recursive-install
para false
.
TL;DR
Comando | Significado |
---|---|
pnpm i --offline | Instala offline apenas com os pacotes em cache |
pnpm i --frozen-lockfile | O pnpm-lock.yaml não é atualizado |
pnpm i --lockfile-only | Apenas o pnpm-lock.yaml é atualizado |
Opções
--force
Força a reinstalação de dependências: atualiza pacotes modificados na loja, recria um arquivo lockfile e/ou um diretório de módulos criados por uma versão não compatível do pnpm. Install all optionalDependencies even they don't satisfy the current environment(cpu, os, arch).
--offline
- Padrão: low
- Tipo: Boolean
Se true
, pnpm irá usar apenas os pacotes disponíveis em cache. Se um pacote não for encontrado localmente, a instalação falhará.
--prefer-offline
- Padrão: low
- Tipo: Boolean
Se true
, as verificações de desatualização dos dados cacheados serão ignorados, mas os dados ausentes serão solicitados do servidor. Para forçar o modo offline, use --offline
.
--prod, -P
O pnpm não instalará nenhum pacote listado em devDependencies
e removerá aqueles que já estiverem instalados se a variável de ambiente NODE_ENV
estiver definida como produção. Use esta flag para instruir o pnpm a ignorar o NODE_ENV
e pegar seu status de produção desta flag no lugar.
--dev, -D
Apenas devDependencies
serão instaladas e dependencies
serão removidas desde que já estejam instaladas, independentemente do NODE_ENV
.
--no-optional
optionalDependencies
não serão instaladas.
--lockfile-only
- Padrão: low
- Tipo: Boolean
Quando passado, apenas atualiza o pnpm-lock.yaml
e package.json
. Nada será escrito no diretório node_modules
.
--fix-lockfile
Corrige entradas quebradas no lockfile.
--frozen-lockfile
- Padrão:
- Fora de CI: false
- Em CI: true, se um lockfile estiver presente
- Tipo: Boolean
Se true
, o pnpm não vai gerar um lockfile e vai falhar a instalação nas seguintes situações: o lockfile não está em conforme com o manifesto, uma atualização é necessária ou não tem nenhum lockfile presente.
Essa configuração é por padrão true
no ambiente de CI. O seguinte código é usado para detectar ambientes de CI:
exports.isCI = !!(
env.CI || // Travis CI, CircleCI, Cirrus CI, GitLab CI, Appveyor, CodeShip, dsari
env.CONTINUOUS_INTEGRATION || // Travis CI, Cirrus CI
env.BUILD_NUMBER || // Jenkins, TeamCity
env.RUN_ID || // TaskCluster, dsari
exports.name ||
false
)
--reporter=<name>
- Padrão:
- Em stdout TTY: default
- Em stdout não TTY: append-only
- Tipo: default, append-only, ndjson, silent
Permite que você escolha o reporter que vai imprimir informações de debug no terminal sobre o progresso de instalação.
- silent - nenhuma informação será impressa no terminal, nem mesmo para erros fatais
- default - o relator padrão quando o stdout é TTY
- append-only - A saída é sempre adicionada no final. O cursor não é manipulado
- ndjson - o relator mais detalhador. Todos os logs sairão no formato ndjson
Se você quer mudar que tipo de informação será impressa, use a configuração loglevel.
--use-store-server
- Padrão: low
- Tipo: Boolean
Inicia um servidor de armazenamento em segundo plano. O servidor de armazenamento vai continuar rodando mesmo após a conclusão da instalação. Para parar o servidor de armazenamento, rode pnpm server stop
--shamefully-hoist
- Padrão: low
- Tipo: Boolean
Cria uma node_modules
plana, similar as do npm
e yarn
. AVISO: Isso é altamente desencorajado.
--ignore-scripts
- Padrão: low
- Tipo: Boolean
Não execute nenhum script definido no package.json
do projeto e nas suas dependências.