Saya menggunakan NPM dan shrinkwrap (versi terbaru terbaru) untuk mempertahankan paket saya.

Saat ini, salah satu paket saya versi saat ini adalah 1.1.0. Versi terbaru dari paket ini adalah 2.2.0.

Saya ingin memperbarui/meningkatkan paket khusus ini ke versi 2.0.0 (dan bukan yang terbaru 2.2.0).

Saya pikir prosedurnya adalah:

  1. npm install untuk memastikan bahwa saya disinkronkan dengan npm-shrinkwrap
  2. npm update myPackage@2.0.0
  3. npm shrinkwrap
  4. git add . && git commit -m "Updating package myPackage to version 2.0.0"

Sepertinya ini bukan jalan yang tepat untuk dilalui. Itu tidak memperbarui package.json dan selalu melompat ke versi terbaru. Saya tidak memiliki kendali atas perintah ini untuk memilih versi spesifik yang saya inginkan.

Saya membaca dokumentasi tentang npm update dan tidak dapat menemukan cara yang tepat untuk memperbarui paket ke versi tertentu.

Bagaimana cara melakukannya ? Apakah npm install --save myPackage@2.0.0 akan menjadi prosedur yang benar? Lalu apa gunanya memiliki npm update command ?

Solusi: npm install package@2.0.0 --save

34
Yves L L 15 Maret 2017, 19:58

2 jawaban

Jawaban Terbaik

npm update tampaknya tidak berinteraksi dengan file shrinkwrap sejauh yang saya tahu. Tetapi Anda dapat menggunakan npm install untuk menyetel versi paket.

Ini akan memperbarui package.json dan npm-shrinkwrap.json:

npm install myPackage@2.0.0 --save

44
Gregory Bell 5 Januari 2018, 21:07

Anda dapat masuk ke package.jsondan menulis versi sendiri pada dependensi. Setelah itu lakukan npm install dan itu akan menginstal versi yang benar.

6
Alan 15 Maret 2017, 17:13