2016-01-12 11 views
7

Это мой сценарий:заставить перезакачку из пакета в NuGet

В ходе разработки NuGet пакет А в проекте А в растворе А мы постоянно должны проверить его в другом проекте. По этой причине у нас есть канал dev nuget, который содержит неизданный пакет A. При создании решения A он будет автоматически вставлен в этот файл dev.

Для тестирования у нас есть решение B с несколькими проектами, что все ссылочные пакеты A из этого dev nuget feed.

Всякий раз, когда мы перестраиваем решение A (и пакет a попадает в фид), мы хотим использовать новую сборку пакета во всех проектах решения B во время тестирования.

После того, как пакет A будет фактически выпущен, он будет перенесен на подачу nuget для выпуска, а затем решение B должно вытащить пакет из фида выпуска, а не из файла dev.

И вот мои два вопроса:

Что такое правильный способ, чтобы заставить перезакачка из пакета А в папку пакетов раствора В и сделать все проекты используют новую сборку пакета даже если версия пакета не изменилась?

Каков предложенный рабочий процесс для этого (общего?) Сценария? Должен ли я делать это по-другому?

ответ

8
Update-Package –reinstall <packageName> 

Это автоматически удаляет и устанавливает пакет nuget каждый раз. Документация дается в https://docs.nuget.org/consume/reinstalling-packages

+0

Как я уже упоминал выше, у меня есть два канала, один из которых содержит временные сборки и канал выпуска. Как только разработка будет завершена, как я могу убедиться, что она вытаскивает ее из фида выпуска, а не из файла dev? Достаточно ли параметра '-source'? Также мне нужно что-либо сделать для всех проектов в решении B? 'Update-Package' als действует на текущий проект в решении, но не на всех. – bitbonk

+0

Надеюсь, вы говорите об этих двух источниках для nuget. Таким образом, вы, должно быть, добавили оба пути dev и release feed nuget. Инструменты -> Nuget Package Manager -> Источники пакетов. Добавьте оба источника. Во время установки вам нужно выбрать источник, из которого вы хотите загрузить пакет. –

+0

У меня одновременно есть оба источника. Я не вижу способа выбора между двумя активными источниками. Мне пришлось бы временно отключить источник dev. Это не похоже на хороший рабочий процесс. Думаю, мне придется использовать параметр '-source'. – bitbonk

Смежные вопросы