package-lock.json은 왜 필요 한가?

npm install을 이용해서 package를 인스톨하면 자동으로 package-lock.json이라는 파일이 생성된다.

용도를 몰라서 그냥 두고 있었는데, 가끔씩 이 파일이 형상관리 과정에서 충돌이 일어나 .gitignore에 추가해버렸었다.

함께 일하시는 분이 package-lock.json은 꼭 필요하다는 이야기를 해주셔서 검색을 해보니 다음과 같은 경우에 사용된다.

  1. npm의 버전의 다른 경우
  2. 의존성을 가진 패키지의 버전이 업데이터 되는 경우
  3. 의존성을 가진 패키지가 의존하는 패키지의 버전이 업데이트되는 경우

node_modules의 폴더의 스냅샷을 저장하여, 다른 곳에서 npm install 명령어를 실행시 package-lock.json에 명시된 의존 패키지들을 통해 node_modules를 만들어 낸다. 다만, package.json의 변경은 package-lock.json 보다 우선 된다.

주요 사항은 package-lock.json은 꼭 형상 관리에 포함 시켜야 한다.

그러하다

참고자료

Posted by lahuman

댓글을 달아 주세요