package-lock.json
JeongSeulho
2024년 03월 12일
준비중...
클립보드로 복사
1. package.json
- semver 에서는
[Major].[Minor].[Patch]
와 같은 방식으로 버저닝이 구성
package.json
은 의존성을 npm 모듈의semantic versioning(semver)
기반 범위 지정 방식으로 관리
2. package-lock.json
package-lock.json
은npm i
를 명령어로package.json
를 기반으로 의존성 모듈을 설치할 때의 정확한 의존성 트리(스냅샷)를 저장
npm i, npm ci
(1) npm i
npm i
는package.json
을 기반으로 모듈을 설치
이 과정에서 위에서 설명한 표기법을 기반으로 조금씩 다른 버전의 모듈을 설치
- 설치된 구체적인 의존성 트리를
package-lock.json
에 저장
(2) npm ci
npm ci
는node_modules
디렉토리를 삭제하고package-lock.json
을 기반으로 모듈을 설치
npm i
와 달리package-lock.json
에 저장된 의존성 트리를 기반으로 정확히 같은 버전의 모듈을 설치
node_modules
폴더가 기존에 없을 경우npm i
보다 빠르게 설치 가능- 개발을 통해 구체적으로 실행이 보장된 버전이고 모듈 설치 속도가 빠르므로 CI 과정이나 프로덕션 환경에서 사용