NuGet и распределенный контроль версий (DVCS)


интересно, можно ли использовать nuget только для хранения ссылок на необходимые пакеты в системе управления версиями (только пакет.config и игнорировать папку packages).

есть ли способ сказать nuget (re)загрузить все указанные пакеты в различных пакетах.конфигурационные файлы? Или что-то подобное, что можно было бы поместить в сценарий сборки.

обновление:

Кажется, что я не единственный, кто просил эту функцию:посмотреть этот рабочий элемент (спасибо Файбергу за подсказку)

обновление 2:

NuGet теперь имеет эту функцию встроена. Смотрите использование NuGet без фиксации пакетов в системе управления версиями для сведения. Все, что осталось, это добавить каталог пакетов .gitignore или какой-то эквивалент вашего VCS (/packages/ будет делать трюк, если у вас это в корне репозитория и использовать git).

3 52

3 ответа:

Я только что узнал о NuGetPowerTools:https://github.com/davidfowl/NuGetPowerTools

Также см.:http://blog.davidebbo.com/2011/08/easy-way-to-set-up-nuget-to-restore.html

обновление: NuGet 1.6 теперь поддерживает восстановление пакета:http://docs.nuget.org/docs/release-notes/nuget-1.6

Я не знаю о вашем первом вопросе.

Что касается того, что сервер CI автоматически обновляет пакеты, это выполнимо в теории. Вы можете связать команды "List-Package-Installed" и "Update-Package" и обновить каждый пакет до последней версии. Смотрите команд для более подробной информации.

Скотт Гатри говорит по теме:

" вы можете интегрировать командную строку вариант с Решение ки и делает команда update-package явно как часть вашего процесса сборки / CI для извлечения обновления. Честно говоря, я не уверен это имеет смысл для сценариев мы говорим о том, впрочем, как как правило, вы хотите, чтобы какой-то dev решил перед обновлением основной среды выполнения зависимость от новой версии. NuPack по модель по умолчанию будет иметь разработчика используйте NuPack для установки библиотеки-и NuPack будет автоматически регистрироваться пакет и зависимости от источника управление. Таким образом, другой dev (или CI server) не нужно было бы использовать NuPack опять же-они могли бы просто синхронизировать их источник и сборка. Но как я уже упоминал раньше, если вы хотели явно выполните обновление как часть вашего CI процесс можно."

Edit:

после вашего комментария я вижу, что вы пытаетесь достичь. Я нашел эта длинная нить в списке обсуждений NuPack по этому вопросу. Решение, по-видимому, не будет частью v1. Пользовательская задача сборки в CI по вашему выбору и конфигурация в вашем РЕПО-это единственное решение, которое я вижу. Пожалуйста, доложите о своих выводах. Ты меня заинтересовал.

существует текущая дискуссия по этому вопросу в блог Фила Хаака, где он просит обратной связи о том, как решить этот вопрос.