I can do it(Feat. DEV)

git에 package.json, package-lock.json 파일을 관리해야할까? 본문

개발자 모드/개념

git에 package.json, package-lock.json 파일을 관리해야할까?

까짓거 해보자 개발자 2023. 3. 24. 15:09
728x90

react로 만든 팀 프로젝트를 진행하면서 문득 든 의문점

package.json, package-lock.json 파일을 깃랩에 올려서 관리해야할까??

그래서 어렴풋이 알고있는 저 파일들이 무슨일을 하는지 알아봄.

※ package.json 이란?
- npm(or yarn) init 을 하면 생성되는 파일로써, npm 패키지들에 대한 정보(name, version 등)들이 적혀있는 json 형태의 파일임.
- 필수적으로 name이나 version에 대한 정보가 명시되어야하며 이 정보가 없으면 패키지를 설치할 수 없음.
- npm install을 사용하여 package.json 에 명시된 의존성 패키지들을 node_modules 폴더에 설치해줌.

※ package-lock.json 이란?
- 생성된 node_modules 폴더의 정보를 담고있는 파일임.
- npm을 사용해서 node_modules 트리나 package.json 파일을 수정하게 되면 자동으로 생성됨.
- package-lock.json 파일이 생성되는 시점의 의존성 트리에 대한 정확한 정보를 담고 있음.

쉽게 말해 package.json은 패키지들을 설치하기 위한 설명서이고, package-lock.json은 package.json 을 설치하던 날의 정보를 담고 있는 설명서인 셈.

그래서 다른사람이 package.json이라는 설명서로 패키지들을 설치할려고 할 때, package-lock.json이란 설명서를 참고해 같은 환경(version)을 만들어주는 것!!

 

결론은 git에 package.json, package-lock.json 파일을 올리도록 하자.

두 파일을 올려야지 같은 개발 환경을 세팅할 수 있음.

즉, 버전이 틀려 초기 개발 환경을 세팅하는데 삽질할 시간을 줄여줌!! 끝👍

 

 

 

📢참고사이트

https://pewww.tistory.com/11

 

미처 알지 못했던 package-lock.json

나는 왜 이 내용을 글로 쓰는가?얼마 전에 친구가 package-lock.json에 대해 쉽게 설명을 해달라고 물어보더군요.하지만, package-lock.json이 어떤 일을 하는지도 모르고, 해당 파일을 발견하면 무조건 지

pewww.tistory.com

https://hyunjun19.github.io/2018/03/23/package-lock-why-need/

 

package-lock.json은 왜 필요할까?

package-lock.json은 왜 필요할까? 2018-03-23 package-lock.json은 왜 필요할까? 어느 날 부터 인가 npm을 사용하면 package-lock.json 파일이 같이 생기기 시작했습니다. 이 파일의 정체가 궁금했지만 바쁘다는 핑

hyunjun19.github.io

 

728x90