Сборка пакетов предварительных версий

При выпуске обновленного пакета с новым номером версии NuGet считает его "последней стабильной версией", что указывается, например, в пользовательском интерфейсе диспетчера пакетов в Visual Studio.

Package Manager UI showing the latest stable release

Стабильная версия — это версия, которая считается достаточно надежной для использования в рабочей среде. Последняя стабильная версия также устанавливается в качестве обновления пакета или во время восстановления пакета (с учетом ограничений, которые описываются в разделе Повторная установка и обновление пакетов).

Для поддержки жизненного цикла выпуска программного обеспечения в NuGet 1.6 и более поздних версиях возможно распространение пакетов предварительных версий, номера версий которых включают в себя суффикс семантического версионирования, например -alpha, -beta или -rc. Дополнительные сведения см. в разделе Управление версиями пакета.

Можно указать такие версии одним из следующих способов:

  • Если в проекте используется PackageReference. Включите суффикс семантической версии в элементе PackageVersion файла .csproj:

    <PropertyGroup>
        <PackageVersion>1.0.1-alpha</PackageVersion>
    </PropertyGroup>
    
  • Если в проекте используется packages.configфайл. Включите суффикс семантической версии в элементе version файла .nuspec:

    <version>1.0.1-alpha</version>
    

Когда вы будете готовы выпустить стабильную версию, просто удалите суффикс, и пакет будет иметь приоритет над любыми предварительными версиями. См. раздел Управление версиями пакета.

Установка и обновление пакетов предварительных версий

По умолчанию NuGet не включает предварительные версии при работе с пакетами, но это поведение можно изменить, выполнив указанные ниже действия.

  • Пользовательский интерфейс диспетчера пакетов в Visual Studio. В окне Управление пакетами NuGet установите флажок Включить предварительные версии.

    The Include prerelease checkbox in Visual Studio

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

  • Консоль диспетчера пакетов. Используйте параметр -IncludePrerelease с командами Find-Package, Get-Package, Install-Package, Sync-Package и Update-Package. См. справочник по PowerShell.

  • Интерфейс командной строки NuGet. Используйте параметр -prerelease с командами install, update, delete и mirror. См. справочник по интерфейсу командной строки NuGet

Семантическое управление версиями

Соглашение о семантическом версионировании (SemVer) описывает, как следует использовать строки в номерах версий для передачи назначения базового кода. Дополнительные сведения об основах управления версиями пакетов.