Usiamo Git e Jenkins come sistema di generazione e rilascio e ad ogni build viene assegnato un numero di versione simile al seguente: 6.0.12345
. Qui, la parte 12345
è un contatore che aumenta a ogni build. Il contatore viene memorizzato sul server di build in un semplice file di testo, che viene riscritto ogni volta che si verifica una compilazione. Vale la pena notare che questo file non è sotto controllo di versione.
Stavo pensando a un modo più elegante di gestire i numeri di build, che consentirà una portabilità più semplice (ad esempio move build server su una nuova macchina) e scalabilità (l'aggiunta di un altro build server sarebbe molto complicata con la configurazione corrente).
L'unica cosa a cui riesco a pensare ora è usare il commit hash anziché il numero, ma questo renderà difficile dire quale delle due build sia arrivata prima, inoltre, non penso che i clienti saranno disposti ad accettare un tale cambiamento .
Qualche idea è apprezzata.