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

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

Пользовательский интерфейс диспетчера пакетов, показывающий последний стабильный выпуск

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

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

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

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

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

    <version>1.0.1-alpha</version>
    

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

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

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

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

    Флажок

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

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

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

Семантическое версионирование

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