預設情況下,NuGet下載下傳的包存放在系統盤(C槽中),這樣一來,時間長了下載下傳的包越多,C槽占用的空間也就越多。
1、問題描述
預設情況下,NuGet下載下傳的包存放在系統盤(C槽中,一般在路徑C:\Users\使用者\.nuget\packages下),這樣一來,時間長了下載下傳的包越多,C槽占用的空間也就越多。
那麼有沒有辦法将預設的下載下傳位置修改掉呢?答案肯定是可以的。
2、修改預設存放位置的目的
目的很簡單,當然是給C槽留出更多的空間來。
3、具體修改
我們先找到NuGet的全局配置檔案NuGet.Config,一般存放在路徑C:\Users\使用者\AppData\Roaming\NuGet\NuGet.Config下,打開該檔案,我們在configuration節點下添加如下配置即可:
<config> <add key="globalPackagesFolder" value="D:\Net_Program\Net_NuGet\Packages" /> </config>
其中的globalPackagesFolder就是我們全局設定的Key屬性,對應的value值就是我們要設定存放的檔案夾位置。
4、全局配置檔案NuGet.Config完整代碼
完整的配置代碼如下所示:
<?xml version="1.0" encoding="utf-8"?><configuration> <packageRestore> <add key="enabled" value="True" /> <add key="automatic" value="True" /> </packageRestore> <bindingRedirects> <add key="skip" value="False" /> </bindingRedirects> <packageManagement> <add key="format" value="0" /> <add key="disabled" value="False" /> </packageManagement> <packageSources> <add key="nuget-v3" value="https://api.nuget.org/v3/index.json" /> <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" /> <add key="nuget.org" value="https://www.nuget.org/api/v2/" /> <add key="NuGet-Azure" value="https://nuget.cdn.azure.cn/v3/index.json" /> <add key="Microsoft Visual Studio Offline Packages" value="C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\" /> </packageSources> <activePackageSource> <add key="nuget-v3" value="https://api.nuget.org/v3/index.json" /> </activePackageSource> <config> <add key="globalPackagesFolder" value="D:\Net_Program\Net_NuGet\Packages" /> </config></configuration>
我們每個電腦上的全局配置檔案中的内容可能不一樣,這裡我們隻需要關心節點<config>→globalPackagesFolder即可。
配置好後,我們重新打開VS去下載下傳一個包,即可看到包已經存放到我們新配置的路徑下了。
5、删除C槽預設的存放檔案
當我們配置好後,就可以删除掉C槽中預設的存放檔案了(C:\Users\使用者\.nuget\packages直接删除掉即可)。
經過重新配置存放路徑後,作者電腦的C槽清理了大概7.5G的檔案,如下圖所示: