TLDR: Так
NuGet використовує ієрархічне застосування джерел пакетів, починаючи з NuGet.config на рівні вашого профілю користувача Windows, а потім застосовуючи все більше і більше детальної конфігурації, починаючи з кореня шляху до файлу, що містить ваше рішення, закінчуючи, до каталогу, що містить ваш файл рішення.
Отже, ось що мені вдалося з’ясувати - люб’язно корисний Twitterer, який вказує мені на цей документ:
https://docs.nuget.org/consume/nuget-config-file
Коли ви редагуєте джерела пакетів NuGet у параметрі Visual Studio Tools > NuGet Package Manager > Package Manager Settings: Package Sources
, він застосовує ці зміни за замовчуванням до файлу NuGet.config, знайденого у вашій %APPDATA%\NuGet
директорії. Щоб замінити ці налаштування для кожного рішення (або для групи рішень), вам потрібно додати стратегічно розміщений файл NuGet.config десь уздовж шляху до вашого рішення або рішень.
Усе стане зрозумілим, якщо ви прочитаєте документ NuGet, наведене нижче рішення швидко дозволить вказати конфігурацію для одного рішення Visual Studio:
- Перейдіть до% APPDATA% \ NuGet і візьміть копію NuGet.config
- Звантажте копію в кореневій частині вашого рішення - тобто там, де живе Application.sln.
- Перевизначте значення за промовчанням, застосовані до вашого профілю користувача, відредагувавши копію, щоб вона містила лише джерела пакетів NuGet, які мають значення для цього рішення - наприклад, приватне джерело NuGet, яке містить власні пакети для цього рішення, але не слід застосовувати до інших проектів - наприклад:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageRestore>
<add key="enabled" value="True" />
<add key="automatic" value="True" />
</packageRestore>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
<packageSources>
<clear />
<add key="My Private NuGet Server" value="http://myprivatenuget.com:8080/nuget" />
</packageSources>
<disabledPackageSources>
<add key="Microsoft and .NET" value="true" />
</disabledPackageSources>
</configuration>
Якщо ви хочете конфігурації для застосування декількох рішень, переконайтеся , що ваші папки рішення все що містяться в загальному каталозі і поставити NuGet.config для джерел пакетів , які мають значення для цих рішень в цьому загальному каталозі, гарантуючи , що будь-які рішення папки для проектів , які Арен «т використовувати ці джерела пакетів не міститься в цій загальній папці.