Skip to content

يشرح أمر bun why سبب تثبيت حزمة في مشروعك من خلال عرض سلسلة التبعيات التي أدت إلى تثبيتها.

الاستخدام

bash
bun why <package>

المعاملات

  • <package>: اسم الحزمة المراد شرحها. يدعم أنماط glob مثل @org/* أو *-lodash.

الخيارات

  • --top: عرض تبعيات المستوى الأعلى فقط بدلاً من شجرة التبعيات الكاملة.
  • --depth <number>: الحد الأقصى لعمق شجرة التبعيات المراد عرضها.

أمثلة

التحقق من سبب تثبيت حزمة محددة:

bash
bun why react
txt
react@18.2.0
  └─ my-app@1.0.0 (requires ^18.0.0)

التحقق من سبب تثبيت جميع الحزم بنمط محدد:

bash
bun why "@types/*"
txt
@types/react@18.2.15
  └─ dev my-app@1.0.0 (requires ^18.0.0)

@types/react-dom@18.2.7
  └─ dev my-app@1.0.0 (requires ^18.0.0)

عرض تبعيات المستوى الأعلى فقط:

bash
bun why express --top
txt
express@4.18.2
  └─ my-app@1.0.0 (requires ^4.18.2)

الحد من عمق شجرة التبعيات:

bash
bun why express --depth 2
txt
express@4.18.2
  └─ express-pollyfill@1.20.1 (requires ^4.18.2)
     └─ body-parser@1.20.1 (requires ^1.20.1)
     └─ accepts@1.3.8 (requires ^1.3.8)
        └─ (deeper dependencies hidden)

فهم الإخراج

يعرض الإخراج:

  • اسم الحزمة والإصدار الذي يتم الاستعلام عنه
  • سلسلة التبعيات التي أدت إلى تثبيتها
  • نوع التبعية (dev أو peer أو optional أو production)
  • متطلب الإصدار المحدد في تبعيات كل حزمة

بالنسبة للتبعيات المتداخلة، يعرض الأمر شجرة التبعيات الكاملة افتراضيًا، مع المسافة البادئة التي تشير إلى تسلسل العلاقات.

Bun بواسطة www.bunjs.com.cn تحرير