Che cos’è un git merge conflict? È quella cosa brutta che accade quando fai un merge e te ne parlo in questo articolo!
Quando si tratta di sviluppo software collaborativo si ha sempre a che fare con altre persone: colleghi, collaboratori, amici… E ovviamente più informaticoe che lavorano allo stesso progetto creano modifiche differenti fra di loro.
Ciao mi chiamo Lorenzo Neri e sono un informatico: realizzo contenuti per aiutare le persone a padroneggiare l’arte del nuovo millennio, ovvero l’informatica!
Se stai leggendo questo articolo è perché in tutto questo, hai deciso di usare git e sai bene che quando si lavora a più cose in parallelo oppure più persone lavorano sullo stesso branch possono succedere cose poco spiacevoli.
Che cos’è un git merge prima di tutto
Poco fa, ho detto che ci possono essere più persone, ma puoi anche essere solo tu.
Immagina di avere due branch diversi: uno master e uno develop.
Esegui delle modifiche ad alcuni file sul ramo “develop“: le registri tramite un commit.
A un certo punto, le vorrai unire al ramo “master” per condensare il tutto?
Ciò che fai banalmente è:
git merge develop
Quindi ecco che cos’è un git merge: una semplice unione di modifiche provenienti da due branch diversi.
Ma… Dobbiamo andare oltre perchè il vero problema nasce ora ed è per questo che stai leggendo questo articolo.
Il conflitto arriva proprio qui
Ti sarai sicuramente reso conto che con l’operazione di prima beh… Git non è del tutto contento.
Diciamo che ti fa notare che i file che hai modificato, sono stati modificati sia da “master” sia da “develop” e le modifiche si sovrappongono, non sono pulite… SONO IN CONFLITTO!
Ed ecco che cos’è un git merge conflict: si tratta a tutti gli effetti di un conflitto di modifiche registrate su dei file e tracciate su due diversi branch che sono stati uniti in un merge.
Quindi, una volta capito che cosa è e in che cosa consiste, ti starai chiedendo come risolvere un git merge nel tuo repository.
E se non ti bastasse, ti potrei invitare a scoprire come risolverli manualmente!
E prima di salutarti, se vuoi sapere come annullarne uno che non è stato ancora pushato beh… Lo trovi qui.