2017-01-12 2 views
0

Я использую TFS для подталкивания пакета NuGet к внутреннему фиду, и он отлично работает, за исключением того, что он отбивает последнюю цифру номера версии для пакета.Как остановить NuGet Push от изменения номера версии моего пакета?

Вот что я получаю в файле журнала:

2017-01-12T14: 22: 47.5046993Z [команда] C: \ BuildAgent \ Задачи \ NuGetPublisher \ 0.2.21 \ node_modules \ NuGet-проблемно-общий \ NuGet \ 3.3.0 \ NuGet.exe push -NonInteractive C: \ BuildAgent_work \ 17 \ b \ MyNugetPackageExample. 3.0.0.0 .nupkg -source \\ MyExampleServer \ MyExampleShare \ MyExampleNuGetFeed -ApiKey VSTS 2017-01-12T14: 22: 47.9734608Z Раздвигая MyNugetPackageExample 3.0.0 к '\\ MyExampleServer \ MyExampleShare \ MyExampleNuGetFeed' ... 2017-01-12T14: 22: 48.0047074Z Ваш пакет был нажат.

Журнал показывает, что номер версии в файле пакета, который я создал, - 3.0.0.0, но когда он толкает, что изменился на 3.0.0. Это означает, что в конечном итоге вы получите имя файла MyNugetPackageExample.3.0.0.nupkg, которое отличается от исходной.

Не стоит ничего, что все это прекрасно работало до обновления сервера TFS до последней версии. Версии наших сборок нестандартны, поэтому нам нужны все 4 цифры в пакете NuGet.

Как я могу заставить его прекратить возиться с именем файла пакета?

Дополнительная информация (13/01/2017):

Оказывается, что пакет MyNugetPackageExample.3.0.0.0.nupkg созданный NuGet Упаковщик использует версию 3.0.0 в файле NuSpec когда -версия Параметр был явно установлен в 3.0.0.0, а в файле имя файла 3.0.0.0.

Когда пакет вставлен, он обновляет имя файла для использования версии, хранящейся в файле NuSpec.

ответ

2

Если посмотреть на tihs NuGet документации вы можете прочитать «Нулевой в четвертой части номера версии будет опущен»:

1.0.0.0 рассматривается как 1.0.0
1.0.01.0 лечится как 1.0.1

+0

Странно, что в нем говорится, что это нарушение для NuGet 3.4, но я вижу проблему с NuGet 3.3. В нем также говорится: «Эта нормализация не влияет на номера версий в самих пакетах, она влияет только на то, как NuGet соответствует версиям». Когда я смотрю на исходный пакет, который создается, он имеет правильный номер версии в имени файла (3.0.0.0), но «версия» в файле NuSpec усечена (до 3.0.0). – John0987

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