Как мне обновить один пакет nuget в проекте из командной строки?
Я пытаюсь обновить один пакет в csproj с несколькими зависимостями. То есть файл packages.config выглядит так:
<packages>
<package id="PackageA" version="1.2.1" targetFramework="net40" />
<package id="PackageB" version="2.3.4" targetFramework="net40" />
<package id="PackageC" version="1.0.0" targetFramework="net40" />
</packages>
Я хотел бы обновить PackageA без обновления других. Я вижу, что Update-Package в диспетчере пакетов Visual Studio имеет такую возможность, но она должна выполняться на компьютере сборки TFS.
Есть ли способ сделать это из командной строки? Ожидаемый рабочий процесс - сборка машины
- Nuget.exe восстановить
- Обновление Nuget.exe (для каждого файла csproj)
Но команда update не позволяет нам указать, какой пакет обновлять. Я знаю, что для пакетов существует тег allowVersions, но это потребует от нас изменения файла packages.config при создании разных веток, для которых требуется обновление разных компонентов или нет, тогда как для конкретной команды, специфичной для csproj, командная строка будет Позволяет нам связывать зависимости для обновления с каждой веткой TFS через определения ее сборки.
1 ответ
nuget.exe update
имеет -Id
аргумент, который указывает проект. Так, например,
nuget.exe update X.csproj -Id PackageA