Подтвердить что ты не робот

Как сохранить VS2015 NuGet для добавления пакетов в TFS

VS2013 имел ошибку, где NuGet добавлял пакеты как ожидающие изменения, даже если вы сказали это не с помощью .tfignore. Был обходной путь, но он не работает с VS2015/NuGet3, а NuGet возвращается к своим старым трюкам. Есть ли способ "Nu"?: -)

Пункт подключения Microsoft: NuGet добавляет пакеты в TFS, несмотря на .tfignore

4b9b3361

Ответ 1

Похоже, это исправлено в версии 3.2 RC расширения NuGet Visual Studio 2015 - обновление для этой версии работало для меня, на мере.

Обсуждение этой проблемы можно найти здесь, где рекомендуется обновлять с NuGet 3.1 до 3.2 RC.

Обновление

Версия 3.2 расширения теперь выпущена (найдена здесь), которая включает это исправление.

Разъяснение

Чтобы получить эту работу, вам понадобятся две вещи:

  • Файл nuget.config, содержащий настройку disableSourceControlIntegration
  • Версия расширения NuGet Visual Studio 2015, которая соответствует настройке disableSourceControlIntegration (версии от 3.2, должны работать)

Как указано в docs:

NuGet сначала загружает NuGet.config из местоположения по умолчанию, затем загружает любой файл с именем NuGet.config, начиная с корня текущего диска и заканчивая в текущем каталоге.

Это означает, что вы можете указать <solution><add key="disableSourceControlIntegration" value="true" /></solution> в файле конфигурации по умолчанию для своего профиля пользователя (найденного в %APPDATA%\NuGet\NuGet.Config) или в файл конфигурации NuGet в каталоге решений, например \MySolution\.NuGet\NuGet.config.

Ответ 2

В вашем %AppData%\NuGet\NuGet.Config файле добавьте следующее перед тегом </configuration> XML...

<config>
  <add key="repositoryPath" value="C:\NuGetPackages" />
</config>
<solution>
  <add key="disableSourceControlIntegration" value="true" />
</solution>

... вы можете указать любой путь, который вы хотите - важная вещь заключается в том, чтобы помещать его в рабочее пространство TFS!

Теперь вам больше не придется беспокоиться об этом. Папка вашего решения больше не будет содержать пакетов; все решения будут по умолчанию использовать ваше собственное расположение пакетов.

ПРИМЕЧАНИЕ. - Это работает для каждого пользователя.

До сих пор я делал то же самое с помощью метода one-config-per-solution (\.nuget\NuGet.Config). Спасибо @dsghi за понимание!

Убедитесь, что папка вашего решения не содержит папку .nuget (старый способ делать вещи). Даже если папка НЕ ​​включена в решение и только в файловой системе, она переопределит все!

Ответ 3

У меня та же проблема, и я еще не нашел реального решения.

Единственное обходное решение, которое я нашел до сих пор:

  • Щелкните правой кнопкой мыши папку пакетов в "Team Explorer - ожидающие изменения" и выберите "отменить".