Versionsinformationen mit MSBUILD aktualisieren (nach Binärdateien)
-
21-09-2019 - |
Frage
Ich möchte ein Ziel in meinem MSBuild -Skript machen, das:
- Fetch SVN Revision/DateTime aus dem Befehl "Svn Info") aus dem Quellenordner ("SVN Info")
- Aktualisieren
Es ist etwas bereit, dies zu erreichen? Ich frage kurz bevor ein anderes Rad neu erfindet ...
Ich schaue mir einen Blick auf http://msbuildeXtainpack.codeplex.com
Lösung
MSBUILD Community Tasks Project ist dein Freund. Überprüfen Sie ihre "svninfo" -Angabe.
Auch Daniel Doubrovkine's Ressourcen ist ein ausgezeichnetes Stück Arbeit und kann Ihnen viele Kopfschmerzen vermeiden, wenn Sie versuchen, die Version des Versions zu entwirren (war dort, das ...).
Andere Tipps
Vor der Kompilierung viel einfacher, indem Sie eine AssemblyInfo -Datei (oder eine Datei mit Assembly -Attributen) schreiben, die in Ihren Projekten enthalten sind.
Beispiel dafür, dies in Powershell zu schreiben, fand hier: https://github.com/craigbeck/rhino-esb/blob/master/psake_ext.ps1#l7-46
Eine Einschränkung - Die Versionen in .NET sind nicht irgendeine Zeichenfolge, sondern auch eine Zeichenfolge, sondern auch ushort
s, was bedeutet, dass sie ein maximal 65535 haben (siehe Docs hier). Wenn Sie die SVN -Revision verwenden (wie wir es einmal getan haben), wird Ihr Build brechen, sobald sie diese magische Zahl überschreitet.
Warum sollten Sie dies nach der Zusammenstellung versuchen?