Wir haben viele Bibliotheken, die in einem CI erstellt werden, die bei jedem Build Vorabversionen bereitstellen. Andere Projekte hängen davon ab und aktualisieren sie automatisch während des Builds.Was steuert die Specific Version-Eigenschaft einer Referenz in einem NuGet-Paket?
Die Verweise werden jedoch mit der spezifischen Version = true festgelegt, was bedeutet, dass das Erhöhen der Versionsnummer auf diesen DLLs zum Fehlschlagen des Builds führt.
Wie kann ich die Einstellung der Eigenschaft steuern?
Ich benutze NuGet Wiederherstellung von der Kommandozeile, um alle Pakete für meine Lösung zu erhalten. Die Pakete sind versioniert wie 1.0.0-neuestes, wo keine der Versionsnummer für einen neuen Build geändert wird, konnte ich nicht von der Befehlszeile aus arbeiten. Die DLL bekommt eine vierte Versionsnummer, die die svn-Nummer ist. Diese Anzahl wird für jeden Build erhöht. – Julius
In Ihrer Antwort sagen Sie, nuget wird immer SpecificVersion auf true setzen, aber später dann sagen Sie, wenn Sie Nuget.exe update project.csproj verwenden und dann auf das neueste NuGet-Paket updaten und SpecialVersion nicht setzen (vorausgesetzt, Sie haben SpecificVersion gemeint) um wahr zu sein. Wenn Sie SpecificVersion nicht setzen, bedeutet das, dass der Standardwert verwendet wird, der wahr zu sein scheint. –
Die Kommandozeile nuget verhält sich in Visual Studio anders als nuget 2. –