인프런 커뮤니티 질문&답변
package-lock 파일은 어떤 용도일까요?
작성
·
655
답변 1
1
김정환
지식공유자
npm은 package.json을 읽어서 node_modules 폴더에 패키지를 설치합니다. 설치할 때마다 이 패키지 정보가 조금 다를수 있는데요.
- 실행하는 npm 버전에 따라 패키지 설치 알고리즘이 다르기 때문
- 유의적 버전(semver)을 사용할 경우 package.json에 명시한 버전 범위 안에서 최신 버전을 설치하기 때문
위 두 가지 이유로 설치 결과가 조금씩 다릅니다.
그래서 npm install 을 실행하면 package-lock.json 파일이 생성되는데요. 당시에 설치한 패키지 정보를 기록해 둡니다. 이것을 의존성 트리라고 하고요.
매번 npm install 을 실행할 때마다 package-lock.json 파일을 참고해 같은 의존성 트리를 보고 node_modules 폴더에 일관적인 패키지 버전을 설치하는 용도로 사용합니다.
참고: https://docs.npmjs.com/cli/v6/configuring-npm/package-locks






답변 감사합니다.