pnpm add <pkg>

패키지와 패키지가 의존하는 모든 패키지를 설치합니다. 기본적으로 새 패키지는 프로덕션 의존성으로 설치됩니다.

요약#

명령어 의미
pnpm add sax dependencies에 저장
pnpm add -D sax devDependencies에 저장
pnpm add -O sax optionalDependencies에 저장
pnpm add -g sax 패키지를 전역으로 설치합니다
pnpm add sax@next next 태그에서 설치
pnpm add sax@3.0.0 버전 3.0.0 지정

지원되는 패키지 소스#

pnpm은 다양한 소스로부터 패키지 설치를 지원합니다. 다음에 대한 자세한 문서는 Supported package sources 페이지를 참고하세요:

  • npm 레지스트리
  • JSR 레지스트리
  • 워크스페이스 패키지
  • 로컬 파일 시스템 (tarball 및 디렉토리)
  • 원격 tarball
  • Git repository (semver, 하위 디렉토리 등 포함)

옵션#

--save-prod, -P, -p#

지정된 패키지를 일반 dependencies로 설치합니다.

--save-dev, -D, -d#

지정된 패키지를 devDependencies로 설치합니다.

--save-optional, -O, -o#

지정된 패키지를 optionalDependencies로 설치합니다.

--save-exact, -E, -e#

저장된 의존성은 pnpm의 기본 semver 범위 연산자를 사용하지 않고 정확한 버전으로 구성됩니다.

--save-peer#

--save-peer를 사용하면 하나 이상의 패키지를 peerDependencies에 추가하고 개발 종속성으로 설치합니다.

--save-catalog#

버전 10.12.1에서 추가됨

새 종속성을 기본 catalog에 저장합니다.

--save-catalog-name <catalog_name>#

버전 10.12.1에서 추가됨

새 종속성을 지정된 catalog에 저장합니다.

--config#

버전 10.8.0에서 추가됨

종속성을 configDependencies에 저장합니다.

--ignore-workspace-root-check#

--ignore-workspace-root-check 또는 -w 플래그를 사용하지 않으면 루트 워크스페이스 패키지에 새 종속성을 추가할 수 없습니다.

예: pnpm add debug -w.

--global, -g#

패키지를 전역으로 설치합니다. 자세한 내용은 Global Packages를 참고하세요.

공백으로 구분된 각 패키지는 각각 별도의 격리된 디렉터리에 설치됩니다. 여러 패키지를 하나의 격리된 설치로 묶으려면(종속성을 공유하고 함께 제거되도록) 쉼표로 구분된 목록으로 전달하세요. 예: pnpm add -g eslint,prettier.

--workspace#

워크스페이스에서 발견된 경우에만 새 의존성을 추가합니다.

--allow-build#

버전 10.4.0에서 추가됨

설치 중에 postinstall 스크립트를 실행할 수 있도록 허용된 패키지 이름 목록입니다.

예시:

pnpm --allow-build=esbuild add my-bundler

이렇게 하면 esbuild의 postinstall 스크립트를 실행하고 pnpm-workspace.yaml의 allowBuilds 필드에도 추가합니다. 따라서 앞으로 esbuild는 항상 스크립트 실행이 허용됩니다.

Since v11.26.0, prefixing a name with ! denies the build instead:

pnpm add --allow-build=!core-js my-bundler

writes allowBuilds: { core-js: false }, so the package is never asked about again. Global installs (pnpm add -g) record the denial too.

--registry#

Specify the registry to use for this installation:

pnpm add --registry=https://registry.npmjs.org/ lodash

--filter <package_selector>#

필터링에 대해 자세히 알아보세요.

--cpu=<name>#

버전 10.14.0에서 추가됨

설치할 네이티브 모듈의 CPU 아키텍처를 재정의합니다. 허용되는 값은 process.arch에서 파생된 package.json의 cpu 필드와 동일합니다.

--os=<name>#

버전 10.14.0에서 추가됨

설치할 네이티브 모듈의 OS를 재정의합니다. 허용되는 값은 package.json의 os 필드와 동일하며, 이는 process.platform에서 파생됩니다.

--libc=<name>#

버전 10.14.0에서 추가됨

설치할 네이티브 모듈의 libc를 재정의합니다. 허용되는 값은 package.json의 libc 필드와 동일합니다.