У меня есть несколько проектов, использующих множество пакетов NuGet, и эти проекты управляются исходным кодом в TFS. Всякий раз, когда пакеты восстанавливаются, они автоматически считываются в систему управления версиями.

Я использую Visual Studio 2013 Update 3 и TFS 2013 с локальными рабочими пространствами, а моя версия NuGet — 2.8.50313.46.

Я, видимо, не единственный, у кого есть эта проблема. Многие люди спрашивали об этом в StackOverflow, но никто из них не смог решить эту проблему или, по крайней мере, не с новой реализацией восстановления пакетов в NuGet. Я попробовал .tfignore в папке решения с исключением «/packages», но это тоже не сработало. Так что теперь я прошу помощи здесь, потому что рано или поздно кто-то проверит эти файлы!

Спасибо.

Примечание. Эту TFS используют около 20 пользователей, поэтому я не рассматриваю применение отдельного исправления на каждой машине.

1
Ucodia 3 Ноя 2014 в 14:10
1
Здесь есть несколько ответов . Мой - единственный, который работает в 100% случаев для меня и моих коллег - несмотря на минус :).
 – 
DaveShaw
6 Ноя 2014 в 02:03
Это, безусловно, работает, но вы не можете применить это, если его используют 20 пользователей!
 – 
Ucodia
6 Ноя 2014 в 17:40
.tfignore работает для меня
 – 
jrummell
6 Ноя 2014 в 17:45
Вы уверены, что используете локальные рабочие пространства? Можете ли вы опубликовать скриншот диалогового окна редактирования рабочей области (с дополнительными параметрами)? Можете ли вы опубликовать свой tfignore?
 – 
Edward Thomson
6 Ноя 2014 в 17:50
- Вы открыты для обсуждения этого в другом месте. Мы пробовали много вещей.
 – 
DaveShaw
6 Ноя 2014 в 18:02

2 ответа

Вы можете добавить в свое решение новую папку с именем «.nuget», в папке поместить файл с именем «NuGet.config», внутри файла добавить конфигурацию nuget:

<configuration>
  <solution>
    <add key="disableSourceControlIntegration" value="true" />
  </solution>
</configuration>

Дополнительные сведения: http://docs.nuget.org/docs/reference/package-restore.

3
liorha 12 Ноя 2014 в 22:41

Щелкните правой кнопкой мыши папку решения -> включить восстановление пакета nuget при сборке. Это создаст необходимую конфигурацию, а также позволит другим членам команды автоматически построить проект.

То вы должны зафиксировать проект. обязательно удалите все пакеты. а затем, если возможно, попробуйте новую проверку на каждой машине.

-1
Jose Ch. 13 Ноя 2014 в 01:29
1
«Включить восстановление пакета nuget при сборке» устарело после Nuget 2.7. См. docs.nuget.org/docs/reference/package-restore.
 – 
Terje Sandstrøm
13 Ноя 2014 в 13:06