Pues si usas GIT para el control de versiones de código, y Trunk Based Development como metodología, hay ocasiones en que tu rama puede llegar a tener un monton de commits pequeñitos relacionados con un feature específico (yo personalmente hago commit cada cambio chico jeje), así que en algunos casos es necesario hacer un squash de los cambios y e incluir todos los ajustes en un único commit.
Si quieres hacerlo para todos los commits de una rama específica, puedes ejecutar los siguientes pasos:
Nos pasamos a la rama principal, hacemos pull, y creamos una nueva rama temporal
git checkout main
git pull
git checkout -b rama_temporal main
Obtenemos los cambios de nuestra rama de trabajo, y los unimos en un solo commit
git merge --squash rama_de_trabajo
En caso de que existieran conflictos, se deben corregir y hacer un commit de dichos cambios con:
git commit
Finalmente podemos hacer un reset en nuestra rama de trabajo, con la rama temporal creada previamente. Hacemos push de los cambios y si es necesario, borramos la rama temporal
git checkout rama de trabajo
git reset --hard rama_temporal
git push -f
git branch -D rama_temporal
Listo! eso es todo!
Deja una respuesta
Lo siento, debes estar conectado para publicar un comentario.