دستور npm pack چه کاری انجام می دهد؟

دستور npm pack چه کاری انجام می دهد؟

برای انتشار یک پکیج، راه‌های مختلفی وجود دارد. در مقاله publish کردن پکیج در npm دیدیم که می‌توانیم آن را روی سایت npm منتشر کنیم و هر بار که خواستیم استفاده‌اش کنیم، از آنجا دانلود و نصب کنیم. این کار با استفاده از دستور npm publish صورت می‌گیرد. علاوه بر منتشر کردن پکیج روی npm، می‌توانیم آن را روی مخزن گیت داشته باشیم و بعداً هر وقت خواستیم به آن ارجاع دهیم، از git url آن استفاده کنیم. می‌توانیم آن را بصورت لوکال ذخیره کنیم و ... .

گاهی ممکن است به هر دلیلی، نخواهیم پکیجمان را در رجیستری npm ذخیره کنیم. در این مواقع می‌توانیم محتویات پکیج را بصورت یک فایل فشرده قابل دانلود و جابجایی ذخیره کنیم. فرمت این فایل .tgz است و دستور npm install نصب این نوع پکیج‌ها را نیز پشتیبانی می‌کند. به این ترتیب اگر در دایرکتوری اصلی پروژه دستور npm pack را اجرا کنیم، در همین آدرس یک فایل .tgz (یک فایل tarball) که پکیج شده‌ی پروژه‌مان است ایجاد می‌شود. البته این در صورتی است که هیچ آرگومانی به دستور npm pack اضافه نکنیم.

ولی در واقع دستور npm pack کاربرد گسترده تری دارد و آرگومان می پذیرد. شمای کلی آن را در تصویر زیر مشاهده می کنیم:

هر چیز قابل نصبی مثل فولدر یک پکیج، یک فایل tarball، یک tarball url،  یک نام با فرمت name@tag یا name@version و در کل هر چیزی که می تواند بعنوان یک پکیج npm در نظر گرفته شود، می تواند توسط این دستور پکیج شود و فایل tarball مربوط به آن ایجاد شود. هر بار که این دستور اجرا می شود، npm پکیج مشخص شده را واکشی(fetch) می کند و آن را در قالب فایلی با نام

 <name>-<version>.tgz

در دایرکتوری فعلی ایجاد می کند. گزینه dry-run-- نیز بغیر از خود عملیات پَک کردن، تمامی مراحل لازم برای پَک کردن پکیج مورد نظر را انجام می دهد و گزارش آن را نیز در کنسول چاپ می کند.

در مقاله بعد، در مورد dist-tag ها یا برچسب هایی که می توان هنگام انتشار پکیج روی npm به آن‌ها اضافه کرد صحبت می کنیم. با ما همراه باشید.

rocket
نظرات
اگر login نکردی برامون ایمیلت رو بنویس: