pnpm install
별칭: i
pnpm install
은 프로젝트 내 모든 의존성 패키지들을 설치하는데에 사용됩니다.
CI 환경에서, lockfile이 있지만 업데이트가 필요한 경우 설치가 실패합니다.
워크스페이스내에서, pnpm install
은 모든 프로젝트의 모든 의존성을 설치합니다. 이 동작을 비활성화하려면, recursive-install
설정을 false
로 설정하세요.
요약
명령어 | 의미 |
---|---|
pnpm i --offline | 스토어에서만 오프라인으로 설치 |
pnpm i --frozen-lockfile | pnpm-lock.yaml 이 업데이트되지 않음 |
pnpm i --lockfile-only | pnpm-lock.yaml 만 업데이트됨 |
옵션
--force
Force reinstall dependencies: refetch packages modified in store, recreate a lockfile and/or modules directory created by a non-compatible version of pnpm. Install all optionalDependencies even they don't satisfy the current environment(cpu, os, arch).
--offline
- 기본값: false
- 유형: Boolean
true
이면 pnpm은 스토어에서 이미 사용 가능한 패키지만 사용합니다. 패키지를 로컬에서 찾을 수 없으면 설치가 실패합니다.
--prefer-offline
- 기본값: false
- 유형: Boolean
true
이면 캐시된 데이터에 대한 부실 검사가 무시되지만, 누락된 데이터는 서버에서 요청됩니다. 전체 오프라인 모드를 강제 실행하려면, --offline
을 사용하세요.
--prod, -P
pnpm은 devDependencies
에 나열된 패키지를 설치하지 않으며 NODE_ENV
환경 변수 가 프로덕션으로 설정된 경우 이미 설치된 패키지 제거합니다. 이 플래그를 사용하여 pnpm이 NODE_ENV
를 무시하고 대신 이 플래그에서 프로덕션 상태를 가져오도록 지시합니다.
--dev, -D
devDependencies
만 설치되고 NODE_ENV
에 관계없이 이미 설치된 dependencies
만 제거됩니다.
--no-optional
optionalDependencies
가 설치되지 않습니다.
--lockfile-only
- 기본값: false
- 유형: Boolean
사용하면 pnpm-lock.yaml
및 package.json
만 업데이트합니다. node_modules
디렉토리에는 아무것도 기록되지 않습니다.
--fix-lockfile
깨진 lockfile 항목을 자동으로 수정합니다.
--frozen-lockfile
- 기본값:
- 비 CI의 경우: false
- CI의 경우: true, lockfile이 있는 경우
- 유형: Boolean
true
인 경우, pnpm은 lockfile을 생성하지 않고 lockfile 이 매니페스트와 동기화되지 않았거나 업데이트가 필요하거나 lockfile이 없는 경우 설치에 실패합니다.
이 설정은 CI 환경에서 기본적으로 true
입니다. 다음 코드는 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>
- 기본값:
- TTY stdout의 경우: default
- 비 TTY stdout의 경우: append-only
- 유형: default, append-only, ndjson, silent
터미널에 설치 진행률에 대한 디버그 정보를 기록할 기록자를 선택할 수 있습니다.
- silent - 치명적인 오류라할지라도 출력이 콘솔에 기록되지 않습니다.
- default - stdout이 TTY일 때의 기본 리포터입니다.
- append-only - 출력은 항상 끝에 추가됩니다. 커서 조작이 수행되지 않습니다.
- ndjson - 가장 장황한 리포터. 모든 로그를 ndjson 형식으로 인쇄합니다.
출력되는 정보 유형을 변경하려면 loglevel 설정을 사용하십시오.
--use-store-server
- 기본값: false
- 유형: Boolean
백그라운드에서 스토어 서버를 시작합니다. 스토어 서버는 설치가 완료된 후에도 계속 실행됩니다. 스토어 서버를 중지하려면 pnpm server stop
을 실행합니다.
--shamefully-hoist
- 기본값: false
- 유형: Boolean
npm
또는 yarn
과 유사한 플랫한 node_modules
구조를 생성합니다. 경고: 이것은 매우 권장되지 않습니다.
--ignore-scripts
- 기본값: false
- 유형: Boolean
package.json
프로젝트 및 해당 의존성에 정의된 어떤 스크립트도 실행하지 않습니다.
--filter <package_selector>
--resolution-only
버전 8.3.0에 추가됨
Re-runs resolution: useful for printing out peer dependency issues.