2012-08-09 10 views
8

Nach den documentation, Versionierung Pre-Release unterstützt wird, mit einem Beispiel gegeben von:Ist Pre-Release-Versionsverwaltung möglich in nuget

Within the NuSpec file, specify the version in the element

<version>1.0.1-alpha</version> 

Ich bin von einer .nuspec Datei Aufbau; wenn ich diese Zeile wörtlich umfassen, führen dann (im Paket-Manager-Konsole):

PM> nuget pack "Nuget\protobuf-net.nuspec"

dann bekomme ich ein wenig Fett Fehler:

Attempting to build package from 'protobuf-net.nuspec'. 
NuGet.exe : Input string was not in a correct format. 
At line:1 char:6 
+ nuget <<<< pack "Nuget\protobuf-net.nuspec" 
    + CategoryInfo   : NotSpecified: (Input string wa...correct format.:String) [], RemoteException 
    + FullyQualifiedErrorId : NativeCommandError 

Wenn jedoch benutze ich nur <version>1.0.1</version> und führe genau den gleichen Befehl aus, dann bekomme ich:

Attempting to build package from 'protobuf-net.nuspec'. 
Successfully created package 'C:\Dev\protobuf-net\protobuf-net.1.0.1.nupkg'. 

Und tatsächlich hat es richtig gebaut. Mein NuGet Package Manager meldet die Version 2.0.30625.9003.

Also: mache ich etwas falsch? oder haben sie etwas kaputt gemacht?

+0

Tritt dasselbe auf, wenn Sie die nuget.exe-Befehlszeile außerhalb der NuGet Package Manager-Konsole verwenden? –

+0

Das habe ich einfach mit nugget 2.0.30619.9000 gemacht. Wenn Sie "nuget help" ausführen, welche Version druckt es am Anfang aus? – vcsjones

+0

@vsjones 'NuGet Version: 1.5.21005.9019' - das klingt seltsam niedrig ...? –

Antwort

3

NuGet Version: 1.5.21005.9019

Semantische Versionierung war introduced in nuget 1.6. Zeit für ein Upgrade. Sie können nuget update -self verwenden, um direkt über die Befehlszeile zu aktualisieren.

+0

Yep; so einfach ist das; 'NuGet.CommandLine' war veraltet und wurde irgendwie nicht zum Update angezeigt. Ich werde nicht über-analysieren, warum - Deinstallation und Neuinstallation von 'NuGet.CommandLine' fixet es, Prost. –