xtring.dev

[NPM] npm install시 --save-exact 옵션을 사용해주세요 본문

Front-End/NPM

[NPM] npm install시 --save-exact 옵션을 사용해주세요

xtring 2024. 4. 22. 09:17
반응형

node 기반 프로젝트 개발시 npm을 통해 여러 패키지를 설치하곤 한다.

 

npm에 배포된 수많은 패키지를 사용할때 주의할 점 중 하나로 node에 대한 호환성과 타 패키지와의 의존성을 고려해해야 한다. 보통 NPM이 이런 문제들을 해결해주곤하지만 때때로 의존성 충돌로 인해 골머리를 쓰게 될때도 있다.

혹은 협업을 하며 하나의 프로젝트에서 npm를 통해 패키지를 다운로드하고 개발할때 서로 다른 버전의 패키지를 사용하면 개발중 문제가 발생할 수 있다.

 

npm install 시 우리는 npm install <package-name>하곤하는데 이는 다시 npm 패키지를 설치할때 틸드(~)나 캐럿(^)에 의해 특정 범위의 서로 다른 패키지를 다운로드할 수 있게 된다. 짧은 기간 내에 패키지의 코어한 기능이 수정되지 않는 경우 문제가 없겠지만 아닌 경우 갑자기 프로젝트의 동작이 이상해지거나 빌드가 안되는 이슈가 발생할 수 있다.(혹은 같은 로컬 빌드지만 동작이 다르다거나)

 

따라서 패키지를 미리 설정된 정확한 버전으로 설치해줄 수 있도록하는 옵션이 필요하다.

npm intall 시 사용할 수 있는 옵션 중 --save-exact or -E옵션은 '패키지의 정확한 버전을 고정으로 설치하겠다'는 기능이다.

$ npm install --save-exact <package-name>

 

혹은 해당 프로젝트 내에서 항상 '정확한 버전만을 설치'하겠다는 세팅을 줄수 있다.

 

이를 npm 명령어로 세팅하거나 .npmrcsave-exact=true 옵션을 추가한다.

$ npm config set save-exact=true
// .npmrc

...
save-exact=true

Ref

반응형
Comments