Utilizziamo il flusso di lavoro del flusso git e talvolta succede che abbiamo filiali di funzioni longeve. Naturalmente possiamo unire dal ramo di sviluppo al nostro ramo di funzionalità, quando un altro ramo di funzionalità viene completato e unito al ramo di sviluppo. Tuttavia, è una buona idea unire direttamente da altri rami di funzionalità, vale a dire prima che siano stati completati? Ciò non creerà la duplicazione della revisione del codice e potenziali conflitti, perché i revisori potrebbero finire per rivedere lo stesso commit (s) più volte, potenzialmente con commenti diametralmente opposti da diversi revisori se il cambiamento è controverso, senza che nessuno se ne accorga? Oppure, lo stesso cambiamento logico potrebbe divergere nei due rami di funzionalità e quindi diventare due modifiche leggermente diverse.
Idealmente vogliamo che le nostre storie siano indipendenti, ma anche se sono teoricamente indipendenti, ci sono spesso alcune modifiche parziali come il refactoring di basso livello e il lavoro di correzione in un ramo che potremmo voler riutilizzare in un altro ramo.
Che cosa suggerisci di fare in una situazione del genere? Copiare e incollare manualmente le modifiche non sembra essere di aiuto, sembra infatti nascondere semplicemente il problema. Certo, possiamo cercare di evitare questo problema dando maggiore priorità alla revisione del codice e alle dimostrazioni, cercando di rendere le storie più piccole, ecc., Ma penso che questo problema si verificherà ancora di tanto in tanto.