Автоматически выбирайте последнюю версию приватной сборки пакетассылка Nuget
Я знаю, что об этом уже спрашивали, но ответа нет, или nuget плохо слушает мои ссылки на пакеты.
У меня есть частное репозиторий Nuget с двумя сборками:
<PackageReference Include="ProjectX.Core" Version="1.0.0.20" />
<PackageReference Include="ProjectX.Domain" Version="1.0.0.20" />
Я хочу, чтобы nuget автоматически получал последнюю версию после восстановления (с помощью Azure Devops), в соответствии с официальными документами, я должен сделать что-то вроде:
<PackageReference Include="ProjectX.Core" Version="1.*" />
<PackageReference Include="ProjectX.Domain" Version="1.*" />
Но потом, когда я смотрю, он пытается вернуться к версии 1.0.0 (которая даже не доступна).
Как сделать Nuget, чтобы автоматически получить последнюю версию?
1 ответ
"работает для меня". Если это не для вас, если вы можете предоставить минимальный, полный и проверяемый пример, мы можем отладить и посмотреть, что происходит не так.
шаги воспроизведения:
# setup isolated nuget environment
dotnet new nugetconfig
# you need to download nuget.exe for these commands, otherwise you have to hand edit nuget.config
nuget config -configfile .\nuget.config -set globalPackagesFolder=gpf
nuget sources -configfile .\nuget.config remove -name nuget
nuget sources -configfile .\nuget.config add -name local -source source
# create nupkgs
dotnet new classlib -n MyLib
cd MyLib
dotnet msbuild -t:pack -p:packageoutputpath=..\source -p:version=1.0.0.1
dotnet msbuild -t:pack -p:packageoutputpath=..\source -p:version=1.0.0.2
dotnet msbuild -t:pack -p:packageoutputpath=..\source -p:version=1.0.0.10
cd ..
# use latest version
dotnet new console -n MyApp
cd MyApp
dotnet add package MyLib --version "1.*"
# check version used. I'm using Powershell
Select-String -Path .\obj\project.assets.json -Pattern MyLib/