강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của wkdgndldi0442
wkdgndldi0442

câu hỏi đã được viết

Máy chủ API NodeJS được tạo thông qua phát triển dựa trên thử nghiệm (TDD)

npm 1

package-lock 파일은 어떤 용도일까요?

Viết

·

674

0

npm init 을 하게 되면 package / package-lock 두개가 생기는데

이 두개를 모두 들고 다녀야하는 것인지, 아니면 package 만 들고 다녀도 되는 것인지 궁금합니다.

package 만 들도 다녀도 된다고 하면 lock 파일은 어떤 용도로 존재하는걸까요?

npmpackagetddexpresslockrest-apinodejs

Câu trả lời 1

1

jeonghwan님의 프로필 이미지
jeonghwan
Người chia sẻ kiến thức

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

 

wkdgndldi0442님의 프로필 이미지
wkdgndldi0442
Người đặt câu hỏi

답변 감사합니다.

Hình ảnh hồ sơ của wkdgndldi0442
wkdgndldi0442

câu hỏi đã được viết

Đặt câu hỏi