incremento automatico della versione in Visual Studio

December 10, 2009 17:42 by M.Poponi

 

C'è un tool che ho cominciato ad usare e di cui non riesco più a fare a meno. La necessità che avevo era quella di avere in maniera automatica, ma controllata, l'incremento del versioning dei miei progetti, sia web, che library che winforms.
Ho scoperto per caso questo add-in per visual studio:
http://team.sfi.vn/post/Build-Version-Increment-Add-In-Visual-Studio.aspx

una volta installato, riavviando visual studio avremo un nuovo item nel menu Tools:

menu

questo comando aprirà una finestra moltro scarna, nel cui albero di sinistra troveremo la nostra solution e i nostri progetti, e nel pannello di destra le varie opzioni per il progetto scelto:

finestra

 

Le opzioni più importanti sono quelle del Versioning Style. Per ognuna delle cifre della versione possiamo scegliere fra una nutrita lista di opzioni, da None, che non cambia il numero (per esempio la major  generalmente è legata a stadi di rilascio, più che di build) a cifre come il giorno dell’anno, il mese, o un semplice incremento.

Si può specificare quale versione incrementare, o se l’incremento avviene al build, al rebuild o sempre.

una possibile configurazione, per esempio è la seguente:

dettaglio

una volta impostato, il tool provvederà automaticamente a modificare (con preventivo checkout se necessario) il file assemblyinfo.cs, come per esempio nel codice che segue:

// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version
//      Build Number
//      Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.9344.10.2")]
[assembly: AssemblyFileVersion("1.9344.10.2")]

a questo punto avremo in maniera automatica e flessibile incrementato ad ogni build la versione del nostro progetto.

semplice, efficace ed utile.


Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Comments