Compilazione di versioni non definitive dei pacchetti

Ogni volta che si rilascia un pacchetto aggiornato con un nuovo numero di versione, NuGet considera tale versione l'ultima versione stabile, come illustrato, ad esempio, nell'interfaccia utente di Gestione pacchetti all'interno di Visual Studio:

Package Manager UI showing the latest stable release

Una versione stabile è una versione considerata sufficientemente affidabile da poter essere usata in ambiente di produzione. L'ultima versione stabile è anche quella che verrà installata come aggiornamento del pacchetto oppure durante il ripristino del pacchetto (soggetto a vincoli, come descritto in Reinstallazione e aggiornamento di pacchetti).

Per supportare il ciclo di vita di rilascio del software, NuGet 1.6 e versioni successive consentono la distribuzione di pacchetti in versione non definitiva, in cui il numero di versione include un suffisso per il controllo delle versioni semantico, ad esempio -alpha, -beta o -rc. Per altre informazioni, vedere Controllo delle versioni dei pacchetti.

È possibile specificare tali versioni usando uno dei modi seguenti:

  • Se il progetto usa PackageReference: includere il suffisso di versione semantico nell'elemento PackageVersion del file .csproj:

    <PropertyGroup>
        <PackageVersion>1.0.1-alpha</PackageVersion>
    </PropertyGroup>
    
  • Se il progetto include un file packages.config: includere il suffisso di versione semantico nell'elemento version del file .nuspec:

    <version>1.0.1-alpha</version>
    

Quando si è pronti per rilasciare una versione stabile, è sufficiente rimuovere il suffisso e il pacchetto ottiene la precedenza rispetto a qualsiasi altra versione non definitiva. Vedere di nuovo Controllo delle versioni dei pacchetti.

Installazione e aggiornamento di pacchetti in versione non definitiva

Per impostazione predefinita, NuGet non include le versioni non definitive quando si lavora con i pacchetti, ma è possibile modificare questo comportamento come segue:

  • Interfaccia utente di Gestione pacchetti in Visual Studio: nell'interfaccia utente di Gestisci pacchetti NuGet selezionare la casella di controllo Includi versione preliminare:

    The Include prerelease checkbox in Visual Studio

    La selezione o la deselezione di questa casella di controllo aggiorna l'interfaccia utente di Gestione pacchetti e l'elenco delle versioni disponibili che è possibile installare.

  • Console di Gestione pacchetti: usare l'opzione -IncludePrerelease con i comandi Find-Package, Get-Package, Install-Package, Sync-Package e Update-Package. Vedere Informazioni di riferimento su PowerShell.

  • Interfaccia della riga di comando di NuGet: usare l'opzione -prerelease con i comandi install, update, delete e mirror. Vedere NuGet CLI reference (Informazioni di riferimento sull'interfaccia della riga di comando di NuGet).

Versionamento semantico

La convenzione di versionamento semantico o SemVer descrive come usare le stringhe nei numeri di versione per indicare il significato del codice sottostante. Altre informazioni sulle nozioni di base sul controllo delle versioni dei pacchetti.