Informazioni Aggiornamento versione con MSBuild (dopo binari compilazione)
-
21-09-2019 - |
Domanda
Voglio fare un target nel mio script MSBuild che:
-
(Comando 'svn info')
- Fetch SVN revisione / datetime dalla cartella fonti
- Aggiorna VERSIONINFO risorsa da .EXEs e DLL generate dal bersaglio 'costruire'
C'è qualcosa di pronto per raggiungere questo obiettivo? Sto chiedendo poco prima di reinventare un'altra ruota ...
Sto dando uno sguardo in http://msbuildextensionpack.codeplex.com
Soluzione
attività di progetto MSBuild Comunità è tuo amico. Controllare il loro compito "svninfo".
Inoltre, ResourceLib è un ottimo lavoro e può evitare un sacco di mal di testa quando si cerca di districare la creazione pasticcio VERSIONINFO (stato lì, fatto che ...)
Altri suggerimenti
Molto più facile per fare questo prima della compilazione scrivendo un file AssemblyInfo (o qualsiasi file con gli attributi di montaggio) i thats incluso nei propri progetti.
Esempio di scrivere questo in PowerShell trovato qui: https://github.com/craigbeck/rhino-esb/blob/master/psake_ext.ps1#L7-46
Un avvertimento - le versioni in .NET non sono solo qualsiasi stringa, ma ushort
s che significa che hanno un massimo di 65535 (vedi Documentazione qui ). Se si utilizza la revisione svn (come abbiamo fatto a un certo punto) la build si romperà una volta si supera quel numero magico.
Perché dovresti tentare di fare questo dopo la compilazione?