NPM에서 devDependencies를 어떻게 업데이트합니까?


155

npm update그냥 패키지를 업데이트 할 것 같다 dependencies,하지만에 대한devDependencies .

지금을 devDependencies실행 하여 설치할 수 npm install .있지만 작동하지 않습니다.npm update .

어떤 아이디어?


1
방금 똑같은 문제가 발생했습니다. npm install와 사이의이 비대칭에 놀랐습니다 npm update. 내 node_modules디렉토리 를 삭제 하고 다시 실행 npm install하여 문제를 해결했지만 더 나은 방법이 있어야합니다.
Joe White

7
이 동작에 대한 버그 보고서 를 열었습니다 . 우리는 어떻게되는지 볼 것입니다.
Joe White

NPM 개발자는 사람들이 npm link개발 환경을 위해 사용할 것이라고 생각했기 때문일 수 있습니다 .
Julian Knight

답변:


157

로컬 모듈 외에 package.json을 업데이트하려면 다음을 실행하십시오.

npm update --save-dev

또는 시간을 절약하기위한 동일한 명령

npm update -D

업데이트의 전체 세부 사항 또는 해당 사안에 대한 명령을 통해

npm help <cmd>

20
npm update -D나를 위해 작동하지 않았다, 그것은 아무것도 업데이트하지 않았다.
AmazingDreams

27
질문이 업데이트를 저장 package.json하는 방법이 아니라 npm updatedevDependencies를 업데이트 하는 방법 일 때 왜 이것이 정답으로 표시 됩니까?
Alejandro García Iglesias

@ onalbi : 그렇지 않습니다. 다음 은 문제를 추적 하는 스레드 입니다.
Dan Dascalescu

1
npm update --save-dev나를 위해 잘 작동합니다. 노드 v12.11.0및 npm 사용v6.11.3
최대화

55

npm-check-updates ( https://www.npmjs.org/package/npm-check-updates )를 설치 한 다음 프로젝트 폴더로 이동하여 다음을 실행하십시오.

npm-check-updates

package.json 파일의 변경 사항을 업데이트하고 저장하려면 다음을 수행하십시오.

npm-check-updates -u

ncunpm-check-updates타이핑을 저장하는 것보다 낫습니다 .
Edric

@DimitriKopriwa있다 -ddevDependencies에 대한 옵션 만
마이클 톰슨

ncu --dep dev -u; npm 설치
Kiruahxh


4

오래된 npm 버전을 사용하는 경우 문제 일 수 있습니다. 따라서 다른 명령을 실행하기 전에 다음을 수행하십시오.

sudo npm install npm -g

또는 (위에서 작동하지 않는 경우) :

sudo npm update npm -g

그런 다음 변경 사항을 적용하기 위해 콘솔을 다시 시작 하십시오. 이제 새로운 것을 확인할 수 npm --version있으며 최신 상태인지 확인하십시오 .

npm update

또는 (원하는 경우) :

npm update --save-dev

불행히도, 이것은 npm 5에서 작동하지 않습니다. 다음 은 문제를 추적하는 스레드 입니다.
Dan Dascalescu

2

업데이트를 강제로 수행하는 한 가지 (느린) 방법은 node_modules 디렉토리를 제거한 다음 npm install다시 수행하는 것입니다.

npm update명령 의 알려진 버그는 의 개발 브랜치에서 수정되었습니다 npm. https://github.com/isaacs/npm/pull/3863

최신 안정 버전의 npm에 곧 출시 될 예정입니다.


1
npm> v5의 package-lock.json경우이 작업을 수행하기 위해 제거해야합니다 . 그렇지 않으면 해당 잠금 파일에 나열된 버전 만 설치됩니다.
karfau

또한 이것은 업데이트되지 않습니다 package.json. 다음 은 문제를 추적 하는 스레드 입니다.
댄 다 스케 스쿠

2

OP와 같은 문제가 발생하여 해결책을 찾지 못했기 때문에 devDependencies를 자동 업데이트하는 Grunt 플러그인을 작성하기로 결정했습니다.

Github에서 NPM이 제공하지 않은 최고의 도구로 만들기 위해 의견을 나누고 공동 작업을하고 싶습니다.

기본적으로 간단한 Grunt Task를 사용하여 오래된 개발 종속성을 자동 업데이트합니다.

https://github.com/pgilad/grunt-dev-update


2

나를 위해 일한 것은 이와 같은 개별 개발자 종속성을 설치하는 것입니다.

npm install react-test-renderer@15.6.1 --save --only=dev

1

이 단계는 나를 위해 일했습니다 :

  1. npm install -g npm-check-updates
  2. ncu -u
  3. npm update
  4. npm install
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.