node.js - update - npm شرح




npm install vs. update-ما الفرق؟ (3)

الفرق بين تثبيت npm وتحديث npm لتحديث إصدارات الحزمة المحددة في package.json :

{
  "name":          "my-project",
  "version":       "1.0",                             // install   update
  "dependencies":  {                                  // ------------------
    "already-installed-versionless-module":  "*",     // ignores   "1.0" -> "1.1"
    "already-installed-semver-module":       "^1.4.3" // ignores   "1.4.3" -> "1.5.2"
    "already-installed-versioned-module":    "3.4.1"  // ignores   ignores
    "not-yet-installed-versionless-module":  "*",     // installs  installs
    "not-yet-installed-semver-module":       "^4.2.1" // installs  installs
    "not-yet-installed-versioned-module":    "2.7.8"  // installs  installs
  }
}

ملخص : والفرق الكبير الوحيد هو أن وحدة مثبتة بالفعل مع إصدارات غامض ...

  • يتم تجاهلها بواسطة npm install
  • يتم تحديثه من خلال npm update

بالإضافة إلى ذلك : install update افتراضيا devDependencies التعامل مع مختلف

  • npm install / تحديث devDependencies ما لم تتم إضافة علم --production
  • سوف يتجاهل npm update npm devDependencies ما لم تتم إضافة علم - --dev

لماذا استخدام npm install على الإطلاق؟

لأن npm install يقوم أكثر عندما تنظر إلى جانب التعامل مع npm install في package.json . كما ترون في التثبيت npm يمكنك ...

  • تثبيت الوحدات النمطية عقدة يدوياً
  • تعيينها على أنها عالمية (التي تضعها في PATH shell) باستخدام npm install -g <name>
  • تثبيت إصدارات معينة تم وصفها بواسطة علامات git
  • تثبيت من رابط بوابة
  • فرض إعادة تثبيت مع

ما هو الفرق العملي بين npm install npm update ؟ متى يجب علي استخدام أي؟


سبق ذكر العديد من الفروق. هنا واحد أكثر:

تشغيل npm install في الجزء العلوي من الدليل المصدر الخاص بك سيتم تشغيل البرامج النصية المختلفة: prepublish ، preinstall ، install ، postinstall . اعتمادًا على ما تفعله هذه النصوص البرمجية ، قد يؤدي npm install إلى عمل أكبر بكثير من مجرد تثبيت التبعيات.

لقد حصلت للتو على حالة استخدام تقوم فيها prepublish make المكالمة وتم تصميم Makefile لجلب التبعيات إذا تم تحديث package.json . من شأن استدعاء npm install من داخل Makefile أن يؤدي إلى تكرار غير محدود ، في حين يعمل npm update ما يرام ، مع تثبيت جميع الاعتمادات بحيث يمكن الاستمرار في npm update حتى لو تم الاتصال مباشرةً.


يثبت npm تثبيت جميع الوحدات المدرجة في ملف package.json وتبعياتها.

يقوم التحديث npm بتحديث كافة الحزم في الدليل node_modules وتبعياتها.

npm تثبيت سريع يثبت فقط وحدة صريحة واعتمادياتها .

npm تحديث صريح بتحديث الوحدة النمطية السريع والاعتمادياتها.

إذاً ، التحديثات متوفرة عندما يكون لديك بالفعل الوحدة النمطية وترغب في الحصول على الإصدار الجديد.





npm