L’opzione merge in Git | Aulab

GUIDE PER ASPIRANTI PROGRAMMATORI

L’opzione merge in Git

Dopo aver introdotto i comandi git rebase in Git e git merge in Git e dopo aver introdotto possibili strategie di workflow, vediamo più nel dettaglio come e perché scegliere l’uno o l’altro comando in base al progetto, all'esigenza e alla finalità che si vuole raggiungere. Molto spesso, infatti, l’attività di rebase è etichettata come…

Lezione 51 / 52
Luca Ferretti
Immagine di copertina

Vuoi avviare una nuova carriera o fare un upgrade?

Trova il corso Digital & Tech più adatto a te nel nostro catalogo!

Dopo aver introdotto i comandi git rebase in Git e git merge in Git e dopo aver introdotto possibili strategie di workflow, vediamo più nel dettaglio come e perché scegliere l’uno o l’altro comando in base al progetto, all'esigenza e alla finalità che si vuole raggiungere.

Molto spesso, infatti, l’attività di rebase è etichettata come difficile e pericolosa per chi si avvicina a Git, ma, come abbiamo visto parlando dei vari workflow, è anche importante saper mantenere la history della propria working copy e del branch principale di sviluppo il più possibile pulita, al fine di comprendere poi meglio l’evoluzione del progetto.

La prima cosa importante per poter confrontare merge e rebase è che i due comandi (o approcci) servono a risolvere lo stesso problema: integrare modifiche presenti su un branch all’interno di un altro branch.
 

Merge vs Rebase

Merge vs Rebase
 

L’opzione merge in Git

Scegliendo l’opzione merge in Git per riportare e modifiche di main su feature, creiamo un merge commit sul branch feature, che “incorpora” le modifiche presenti sul branch principale e lega insieme i due branch.

git merge feature main
 

Opzione Merge

Opzione Merge
 

L’operazione di merge è “non distruttiva”. Modifiche e commit preesistenti al merge non vengono alterati in alcun modo.

D’altro canto, il branch feature conterrà un merge commit “estraneo” per ogni volta che sarà necessario incorporare modifiche dal branch principale. Se il branch feature vive molto a lungo e ci sono modifiche frequenti al branch main, sarà difficile comprendere l’esatta cronologia delle modifiche.

Inoltre, se consideriamo uno sviluppo a “feature branch”, sarà sempre necessario pensare a cosa accadrà quando riporteremo il branch di feature sul ramo principale.

Sei indeciso sul percorso? 💭

Parliamone! Scrivici su Whatsapp e risponderemo a tutte le tue domande per capire quale dei nostri corsi è il più adatto alle tue esigenze.

Oppure chiamaci al 800 128 626