개발세발

package.json 과 package-lock.json 본문

코딩공부/참고자료

package.json 과 package-lock.json

뉼👩🏻‍💻 2022. 12. 20. 11:58
728x90
반응형
SMALL

 

 

package.json

  • packages 폴더는 React 저장소에 있는 모든 패키지들에 대해 package.json과 같은 메타데이터와 src 폴더를 포함하고 있습니다. 변경하고자 하는 부분이 코드와 관련되어 있다면, src 폴더에 대부분을 할애하게 될 것입니다.

https://github.com/facebook/react/tree/main/packages

 

GitHub - facebook/react: A declarative, efficient, and flexible JavaScript library for building user interfaces.

A declarative, efficient, and flexible JavaScript library for building user interfaces. - GitHub - facebook/react: A declarative, efficient, and flexible JavaScript library for building user interf...

github.com

 

1. 메타 데이터를 표현

➡️ node package를 위한 내용

 

2. 프로젝트에서 사용하는 의존성 나열 

package-lock 파일을 커밋해줘야 버전이 맞지 않는 일이 줄어들게 됨 

➡️ 찾아보니 package.json 파일의 의존성 선언에는 "version range"가 사용되므로 package-lock.json에 기재된 정확한 버전명이 있따면 오류가 더 줄어들게 된다. 

 

* 자세한 내용은 아래의 블로그에 이해하기 쉽게 잘 작성되어 있다

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

 

 

 

** 그래서 협업시 node-modules를 공유하지 않음!

package.json에 설치된 dependencies의 목록이 있으므로 

package.json을 바탕으로 npm이 설치된다. 

 

따라서 사용하고자 하는 npm들을 설치한 후 package.json만 공유를 하고 

공유받은 다른 사용자가 

npm install

만 해주면 npm의 종류와 버전이 알맞게 설치가 된다 

 

* node-modules 파일은 파일 개수가 많아서 무겁기 때문에 굳이 이 폴더를 주고 받는 것보단 pacakge.json을 공유하고 공유받아 사용하고자 하는 유저가 npm install을 해서 로컬에서 새롭게 설치하는 것이 더 효율적이다. 

 

 

 

https://docs.npmjs.com/cli/v9/configuring-npm/package-json

 

package.json | npm Docs

Specifics of npm's package.json handling

docs.npmjs.com

 

https://docs.npmjs.com/cli/v9/configuring-npm/package-lock-json

 

package-lock.json | npm Docs

A manifestation of the manifest

docs.npmjs.com

 

 

 

 

** 패키지 관리 툴

npm yarn
마켓이 큼 속도가 빠름,  신생마켓 
npm install yarn add 

 

https://velog.io/@kysung95/%EA%B0%9C%EB%B0%9C%EC%83%81%EC%8B%9D-npm%EA%B3%BC-yarn

 

[개발상식] npm과 yarn

패키지 관리 툴로는 대표적으로 npm과 yarn이 있습니다.여러분들은 평소 어떠한 패키지 설치 모듈을 사용하나요?

velog.io

 

 

 

 

728x90
반응형

'코딩공부 > 참고자료' 카테고리의 다른 글

vscode에서 STAGED CHANGES 가 너무 많다면  (0) 2022.12.20
prettier과 ESLint  (0) 2022.12.20
MVC패턴  (0) 2022.11.25
기본 리눅스 명령어 정리  (0) 2022.11.25
데이터 포맷  (0) 2022.10.05