2017-06-07 2 views
0

Ich habe einen Ordner in TFS mit SQL-Skripten. Im Moment füge ich manuell einen Kommentar hinzu und aktualisiere eine Versionsnummer im Kommentar jedes Mal, wenn ich eine Änderung mache und überprüfe sie zurück. Das funktioniert, aber ich hoffte, dass es einen besseren Weg geben könnte. Gibt es eine Möglichkeit, dies in TFS zu automatisieren?Inkrementieren Versionsnummer beim Einchecken in TFS

Ich habe folgende Artikel Version control project files

i für eine einfache SQL-Dateien durch einen solchen Prozess gehen tun lesen? Gibt es andere einfache Möglichkeiten?

Antwort

0

Es gibt ein paar Möglichkeiten, wie Sie dies tun können:

  1. ein automatisiertes Build in TFS erstellen und benutzerdefinierte Build-Schritt/Powershell-Skript schreiben, um die entsprechenden SQL-Skripte zu analysieren, lesen Sie die Version, erhöhen sie, und Speichern Sie die neue Version, indem Sie entweder die aktualisierte Datei oder einen lokalen Speicher einchecken.
  2. Verwenden Sie ein Datenbankprojekt (Teil von SQL Server Data Tools), das einen DACPAC ausgibt. Innerhalb des Datenbankprojekts können Sie die Version wie angegeben here festlegen. Dies speichert die Version in der Projektdatei. Wenn Sie Ihre TFS-Build-Nummer nur als Ziffern aktualisieren, können Sie die Projektdatei aktualisieren, um diesen Wert mithilfe einer benutzerdefinierten Build-Aufgabe dem Build anzupassen. Zum Beispiel, wenn Ihre Build-Nummer yyyy.m.d.R war, wobei R die Anzahl von Malen ist, die der Build heute ausgeführt wurde (TFS verwaltet das - es ist die Revisionsvariable). Oder Sie können den Tag <DacVersion> auf etwas wie 2.1.0.0 setzen und Ihr Build ersetzt die letzte Ziffer durch yyyymmddr.

Ich würde empfehlen, ein Datenbankprojekt zu verwenden. Es ist ziemlich einfach zu create a new database project off an existing database.

0

Der erste von Jacob oben erwähnte Weg kann erreichen, dass, wenn Sie nur die Versionsnummer des Skripts/Ordners inkrementieren möchten, erstellen Sie einfach eine CI-Build-Definition.

Eigentlich kann man nur Label-Quellen aktivieren und das Label-Format mit vordefinierten Umgebungsvariablen wie $ (build.buildNumber) und stellen ohne Artefakte während des Bauprozesses veröffentlichen. Dadurch wird automatisch das CI-Build beim Einchecken von Dateien ausgelöst, und die Quelle (SQL-Skript/Ordner) wird mit der inkrementellen Nummer gekennzeichnet.

Dann können Sie die spezifischen Versionen mit dem Etikett finden. enter image description here

Verwandte Themen