2017-09-20 5 views
0

Um CI/CD mit VSTS zu erreichen, bin ich jetzt an einem Punkt fest, wo ich die Versionsnummern für jedes neue Build in der Warteschlange erhöhen soll.Aktualisieren der Version/Revisionsnummern für jeden neuen Build

Ist es möglich, die Revisionsnummer der einzelnen Projektausgaben (dlls oder exe's) zu aktualisieren, indem nur eine weitere Aufgabe in der Builddefinition hinzugefügt wird oder irgendwelche msbuild Argumente verfügbar sind, um die Versionsnummern in der Laufzeit zu ändern.

Vielen Dank im Voraus.

+0

Der neue sdk-style-Projekttyp unterstützt dafür Msbuild-Parameter, aber C# -Modifikation muss manuell/über Regexes erfolgen (es gibt auch [eine Erweiterung für vsts] (https://marketplace.visualstudio.com/items? itemName = sebastianlux.UpdateAssemblyInfo)), es würde also helfen, wenn Sie angeben, welchen Projekttyp Sie verwenden –

+0

Lösen Sie dieses Problem mit der Lösung von Chris? –

+0

nein starain ich habe nicht die Chance bekommen, es zu untersuchen. –

Antwort

2

BuildNumbers werden automatisch für jedes Build erstellt, das geplant wird.

Sie geben an, was Sie im Abschnitt Build> Optionen> Build-Nummernformat festlegen möchten.

Der Standardwert ist:

$(date:yyyyMMdd)$(rev:.r) 

Aber wenn Sie einige Variablen in Ihren Build hinzufügen, dann können Sie das Format als solche verändern.

$(MajorVersion).$(MinorVersion)-$(date:MMdd)$(rev:.r) 

Diese erhalten dann zu deinem Freigabeschritt wie die auf Build-Nummern und Variablen

$[BUILD_BUILDNUMBER] - TFS 2010/15/17 Update1 

$(Build.BuildNumber) changed from old $[BUILD_BUILDNUMBER] for Update2 

Mehr Infos hier Variable definiert vorab durchlaufen zu finden ist:

Build Number Format

Default Variables

Bearbeitungen:

Ja, Sie können Versionierung auch DLLs hinzufügen.

Assembly PowerShell Script

erfordern diese keine Argumente: Wir verwenden aa Lager Microsoft Powershell-Skript, das der Trick, die wir als Build-Task hinzufügen (vor dem Build-Lösung Schritt) kann die Quelle finden Sie hier wie es die Variablen aus dem Build-Prozess verwendet!

+0

Danke für die Antwort Chris. Noch ein Zweifel, ich baue ein Projekt die Ausgabe des Projekts ist DLL, also gibt es eine Möglichkeit, die Versionsnummer der DLL zu aktualisieren? indem Sie die Aufgabe in der Build-Definition hinzufügen? –

+0

Bearbeitete die Antwort mit mehr Informationen über das DLL-Problem. –

+0

Chris ein weiterer Zweifel in meiner Build-Definition Ich habe mehrere Projektdateien anstelle von SLN-Datei, also muss ich das Powershell-Skript vor dem Erstellen jeder Projektdatei ausführen –

Verwandte Themen