اذهب إلى المحتوى

السؤال

نشر

لدي مشروع مبني من خلال node.js وفيه العديد من المكتبات التي تم الاعتماد عليها لبناء المشروع، ومنها ما أصبح قديم لذلك أحتاج لتعديل بعض النسخ من هذه المكتبات التي لم تعد تعمل بالشكل الصحيح.

كيف يمكنني الحصول على نسخ هذه المكتبات ضمن المشروع والتي تحتاج لتحديث، وبعد ذلك كيف يمكنني تحديثها؟

Recommended Posts

  • 1
نشر

يمكنك تنفيذ الأمر التالي والذي سيقوم بمقارنة اصدارات كافة الحزم في مشروعك والبحث عن الاصدارات الجديدة

npm outdated

 الخرج يكون جدول بتقرير بكافة الحزم الممكن تحديثها حيث

  • Current : النسخة المنصبة الحالية في المشروع
  • Wanted : هي النسخة التي يمكن التحديث اليها
  • Latest : وهي أخر نسخة متوفرة من الحزمة (لا يتم التحديث لها مباشرة قبل مراجعة تغييرات النسخة واستخدام تطبيقك لها)

مثال عن التقرير

 

Package      Current   Wanted   Latest  Location                  Depended by
glob          5.0.15   5.0.15    6.0.1  node_modules/glob         dependent-package-name
nothingness    0.0.3      git      git  node_modules/nothingness  dependent-package-name
npm            3.5.1    3.5.2    3.5.1  node_modules/npm          dependent-package-name
local-dev      0.0.3   linked   linked  local-dev                 dependent-package-name
once           1.3.2    1.3.3    1.3.3  node_modules/once         dependent-package-name

 

بعد معرفة الحزم المراد تحديثها يمكن تحديث الكل عبر تنفيذ الأمر

npm update

أو تحديد مع حزمة معينة مثال 

npm update glob

 ويمكن تحديد نسخة معينة تريد التحديث إليها

npm update glob@6.0.1

 

  • 0
نشر

بافتراض أن لديك مشروع node يحتوي على مكتبة lodash قديمة

"dependencies": {
    "lodash": "^3.9.2"
}

يمكنك تشغيل 

npm outdated

وستحصل على معلومات حول نسخ المكتبة

Package  Current  Wanted  Latest  Location
lodash    3.10.1  3.10.1  4.16.4  backend

يمكنك الأن تثبيت النسخة الأخيرة عبر

npm install lodash@latest

 

  • 1
نشر

إن الأمر npm outdated سيقوم بتحديد الحزم التي تحتاج لتحديث، والأمر npm update مرفقاً باسم الحزمة سيقوم بتحديثها.

ولكن المشكلة في النسخ القديمة من مدير الحزم npm (ماقبل 5.0.0)، ففي حال قمت بتنفيذ الأمر:

npm update <packageNameExample>

سيقوم بتحديث الحزمة، ولكن لن يقوم بأي تعديل على رقم النسخة ضمن ملف package.json وهي مشكلة حقيقية.

لذا يجب عليك التأكد من نسخة npm الموجودة لديك في حال كانت مادون النسخة الخامسة، يجب عليك تحميل المكتبة npm-check-updates ثم تنفيذ الأوامر التالية:

لطباعة الحزم التي تحتاج لتحديث في مشروعك (وهي مشابهة لعمل npm outdated):

npm-check-updates

ثم لتحديث النسخ ضمن ملف package.json نستخدم الأمر التالي:

npm-check-updates -u

وأخيراً تنفيذ الأمر التالي لتحميل النسخ المحدّثة اعتماداً على ملف package.json:

npm update

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...