모도리는 공부중

[Node.js] studying - NVM, NPM, NPX and Command 본문

내 지식 정리/날것 그 자체

[Node.js] studying - NVM, NPM, NPX and Command

공부하는 모도리 2021. 7. 13. 09:18
728x90
반응형

nvm은 node version manager라는 full name에서부터 알 수 있듯이 이해가 가는데 npm은 아무리 설명을 봐도 이해가 안 간다. 이게 바로 제대로 실습해보지 않아서일 것이라 생각하며 열심히 구글링에 구글링을 거듭하던 중, npx라는 것을 발견했다.

https://webruden.tistory.com/275

 

npx란 무엇일까? 그리고 npm이랑 어떤 차이점이 있을까?

우리는 종종 npx 명령어를 사용해서 패키지를 설치하곤 합니다. 예를 들어 리액트 CRA를 설치할 때 npx create-react-app을 사용하고 , nuxt를 설치할 때 npx create-nuxt-app을 사용하고, 리액트 네이티브를 설

webruden.tistory.com

 


 

2021.08.30. npm 내용 추가

 

프로젝트를 git clone을 통해 받을 때 node-modules가 없다면 npm install이 필요하다.

이 과정에서 npm이 무엇인지 궁금하다면,

https://www.howdy-mj.me/node/about-npm/

 

npm: 소개, 설치, 명령어, 배포

1. npm이란? React, Vue, Angular 등 자바스크립트 프레임워크를 사용해 본 사람이라면 이란 단어를 많이 접해봤을 것이다. 하지만 npm이 무엇이고, 어떻게 사용되는지 아는 사람은 많이 없다고 생각한

www.howdy-mj.me

 

npm i

라는 간단한 명령어를 통해 install을 해줄 수 있는데 package.json과 package-lock.json 파일을 통해 npm이 설치를 진행하다보면 아래와 같은 부분이 뜰 수 있다.

(base) PS D:\Project\test\testt\testtt\backend> npm i      

> bcrypt@5.0.0 install D:\Project\test\testt\testtt\backend\node_modules\bcrypt
> node-pre-gyp install --fallback-to-build

node-pre-gyp WARN Using needle for node-pre-gyp https download 
[bcrypt] Success: "D:\Project\test\testt\testtt\backend\node_modules\bcrypt\lib\binding\napi-v3\bcrypt_lib.node" is installed via remote

> node bin/postinstall || exit 0

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.2 (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

added 341 packages from 269 contributors and audited 345 packages in 11.753s

9 packages are looking for funding
  run `npm fund` for details

found 8 vulnerabilities (2 moderate, 6 high)
  run `npm audit fix` to fix them, or `npm audit` for details

 

구글링을 하면 나와 같은 현상을 겪은 이의 해결법을 참고할 수 있으며,

https://minimonk.net/8320

 

npm audit

회사에서 설치할때는 별 소리 없더니 집에와서 설치하려고 하니 먼가 경고가 뿜뿜한다 -_- 결론만 말하자면, 저거 경고일뿐 일단 설치는 된거니 무시해도 된다 정도? $ npm install added 150 packages from

minimonk.net

 

npm audit과 npm audit fix가 무엇인지 궁금하다면 아래 링크를 참고하도록.

https://medium.com/@kimjnsjwj/npm-about-audit-8e02e3b7c833

 

NPM — About audit

npm audit fix와 force 옵션

medium.com

 

package.json과 package-lock.json이 뭐냐고?

 

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

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

hyunjun19.github.io

 

package-lock.json에 대해 알아보기

이글은 npm의 글을 발췌하여 번역한 글이며, 현재 제 개인 블로그 (https://trustyoo86.github.io) 에도 기재되어 있는 글입니다 :)

medium.com

 

package-lock.json은 왜 필요할까?를 읽다보면 예시로 박과장과 김대리 시나리오가 있는데, 보면서 정말 빵터졌다. 근데 그럴 수도 있다고 생각 든 게, .gitignore를 열어보면 ignore할 contents에 /package-lock.json이 나도 들어있었다. 이런 문제로 npm audit이나 npm audit fix를 하라고 떴을 것이라 생각된다.

 

 

당연히 여기까지 왔다면 node.js가 무엇인지 알고 왔겠지만 모를 이를 위해 잘 정리된 링크 투척.

 

 

Node.js란?

Node.js란 무엇인가? 대부분 npm은 아래처럼 기술되어 있다. npm은 Node Package Manager의 줄임말로 Node.js 패키지 관리를 원활하게 도와주는 것이다. npm은 Node.js의 패키지 생태계이면서 세계에서 가장 큰

www.howdy-mj.me

 


 

2021.10.28. npm 관련 내용 추가.

 

작업을 진행하면서 npm 라이브러리를 설치(npm install blablabla)할 때 설명글을 참고하다보면 간간히 --save 옵션을 추가하는 경우들이 있다. 의존성 때문에 넣는다고 하는데 이게 무슨 소리일까 싶어 검색해보니 아래와 같은 해답을 얻을 수 있었다.

https://xtring-dev.tistory.com/11

 

[NPM] npm install 할 때 --save 옵션을 함께 입력하는 이유? 하지만 이제는 사용하지 않아도 되는 이유.

JavaScript 프로젝트를 하게 되면 외부 모듈을 많이 이용하게 됩니다. library를 받기 위해 npm 명령어 입력하면서 --save 옵션을 봤지만 정확한 이유를 몰랐습니다. 먼저 npm(Node Package Manager)은 프로젝트

xtring-dev.tistory.com

결론적으로 지금은 --save 옵션을 추가하지 않아도 package.json에 dependency가 자동으로 추가되도록 업데이트되었으므로 걱정 없이 사용하면 된다. --save 안해도 돼!!

728x90
반응형
Comments