L'opció --squash de l'ordre git merge permet fusionar els canvis d'una branca en una altra
amb un únic commit.
De vegades, el treball en una branca genera molts commits xicotets (micro-commits) que no aporten
informació rellevant. Amb aquesta opció, tots aquests commits es fusionen en un de sol,
i així s'evita omplir l'historial d'informació innecessària.
Aquesta opció és especialment útil en la fusió de branques de funcionalitat,
que es presenta en el bloc següent, Estratègies de ramificació.
Internament, git merge --squash aplica tots els canvis de la branca especificada en l'Àrea de preparació
(Staging Area), però no fa el commit, que cal fer manualment.
La sintaxi és la següent:
gitmerge--squash<branca>
<branca>: branca els canvis de la qual es volen incorporar en la branca actual.
Crea el nou repositori en una carpeta independent per evitar problemes amb els exemples i exercicis anteriors.
Exemple: git merge --squash
Es fusionen tots els canvis de la branca canvis en la branca principal main.
jpuigcerver@fp:~/git_squash(canvis)$gitcheckoutmain
Switched to branch 'main'jpuigcerver@fp:~/git_squash(main)$gitmerge--squashcanvis
Updating 863c0b2..824cb01Fast-forwardSquash commit -- not updating HEAD README.md | 3 +++ 1 file changed, 3 insertions(+)jpuigcerver@fp:~/git_squash(main)$gitstatus
On branch mainChanges to be committed: (use "git restore --staged <file>..." to unstage)modified: README.mdjpuigcerver@fp:~/git_squash(main)$gitcommit-m"Canvis A, B i C"[main 00b7e27] Canvis A, B i C 1 file changed, 3 insertions(+)jpuigcerver@fp:~/git_squash(main)$gitlga
*824cb01-(0 seconds ago)Canvi C-Joan Puigcerver(canvis)*58d9407-(0 seconds ago)Canvi B-Joan Puigcerver*b460f08-(0 seconds ago)Canvi A-Joan Puigcerver| *00b7e27-(0 seconds ago)Canvis A, B i C-Joan Puigcerver(HEAD -> main)|/ *863c0b2-(0 seconds ago)Commit inicial-Joan Puigcerver
S'observa que tots els canvis de la branca canvis s'han incorporat en la branca main amb un únic commit.
📌 Aquest document pot quedar desactualitzat després d’imprimir-lo. Pots consultar la versió més recent
a la pàgina web.
🌿 Abans d’imprimir aquest document, considera si és realment necessari. Redueix el consum de paper i ajuda a protegir el nostre entorn.