Un collega e io abbiamo discusso a turno / discutendo i problemi / i meriti di integrare una versione derivata dal repository git attuale nel nostro codice ogni volta che viene creata.
Pensiamo che i meriti includano:
- Non è necessario preoccuparsi dell'errore umano nell'aggiornamento di un numero di versione
- Tracciabilità tra ciò che troviamo in un dispositivo e il codice sorgente derivato da
I problemi che sono sorti (per noi) includono:
- I sistemi di generazione derivati da IDE (ad es. MPLABX) possono rendere difficile capire dove inserire questi tipi di ganci (e alla fine può risultare abbastanza scadente)
- Più lavoro per integrare effettivamente questo negli script di compilazione / makefile
- Accoppiamento a un particolare approccio di build (ad es. cosa succede se una persona costruisce con XCode e l'altra MPLABX) può creare sorprese a valle
Quindi siamo curiosi di sapere dove altri sono finiti in questo dibattito. È davvero facile che la discussione diventi aneddotica. Ci sono molte persone là fuori che sono insistenti nell'automazione end-to-end, bloccano la quantità di lavoro frontale e l'accoppiamento che crea. E ci sono molti altri dall'altra parte del dibattito, che fanno solo la cosa più semplice che funziona e vivono con i rischi.
Esiste una risposta motivata a quale lato è meglio atterrare?