NuGet یک مدیر بسته (Package Manager) برای پروژههای .NET است که به توسعهدهندگان کمک میکند تا به راحتی کتابخانهها و ابزارهای مورد نیاز خود را به پروژههایشان اضافه کنند. برای افزایش سرعت عملکرد، NuGet بستهها و اطلاعات مربوط به آنها را در مکانهای مختلفی به صورت کش (Cache) ذخیره میکند. با گذشت زمان، این کش میتواند حجم قابل توجهی از فضای دیسک را اشغال کند. پاکسازی دورهای این کش، به ویژه در مواردی که با کمبود فضای دیسک مواجه هستید، توصیه میشود.
مکانهای ذخیره کش NuGet
برای مشاهده مکانهای ذخیره کش NuGet، میتوانید از دستور زیر در خط فرمان (Command Line) استفاده کنید:
dotnet nuget locals all --list
این دستور، مکانهای زیر را نمایش میدهد:
- http-cache: این مکان، فرادادهها و احتمالاً برخی از دادههای باینری (Binary Data) بستهها را ذخیره میکند.
- global-packages: این پوشه شامل بستههای دانلود شده NuGet است که در تمام پروژههای کاربر به اشتراک گذاشته میشوند.
- temp: این پوشه، فایلهای موقتی مورد استفاده NuGet را نگهداری میکند.
- plugins-cache: این پوشه، دادههای مربوط به افزونههای (Plugins) NuGet را ذخیره میکند.
روشهای پاکسازی کش
برای پاکسازی کشهای خاص، میتوانید از دستور dotnet nuget locals <نام-کش> --clear استفاده کنید:
پاکسازی پوشه بستههای سراسری (Global Packages):
dotnet nuget locals global-packages --clear
این دستور، تمام بستههای دانلود شده را حذف میکند و در نتیجه، در هنگام ساخت پروژه بعدی، بستهها دوباره دانلود خواهند شد.
پاکسازی کش HTTP:
dotnet nuget locals http-cache --clear
این دستور، فرادادهها و احتمالاً دادههای باینری ذخیره شده در کش HTTP را پاک میکند.
پاکسازی پوشه موقت (Temp):
dotnet nuget locals temp --clear
این دستور، فایلهای موقتی NuGet را حذف میکند.
پاکسازی همه کشها
برای پاکسازی تمام کشهای NuGet به طور همزمان، از دستور زیر استفاده کنید:
dotnet nuget locals all --clear
این دستور، محتویات تمام مکانهای کش را حذف میکند و NuGet را مجبور میکند تا در هنگام ساخت برنامهها، بستهها و فرادادهها را دوباره دانلود کند.
نتیجهگیری
پاکسازی دورهای کش NuGet میتواند به آزاد سازی فضای دیسک و بهبود عملکرد سیستم کمک کند. با استفاده از دستورات ارائه شده، میتوانید به راحتی کشهای NuGet را مدیریت کنید.
مشاهده مطلب اصلی