Git World: aplicar un commit de otra rama

Muy buenas,

Seguimos con nuestra sección Git World con una cuestión que seguro que os ha hecho falta alguna vez: aplicar uno o varios commits de una rama en nuestra rama work o master.

Como hemos visto en anteriores capítulos, la forma de trabajar suele ser aplicando merges o rebases entre ramas, pero ¿qué pasa si nos interesa aplicar un cambio de un commit en particular y no queremos traernos todos los commits de la rama origen? El ejemplo más común sería coger añadir un bugfix desarrollado en una rama destinada a una funcionalidad más grande.

Existe un comando llamado git cherry-pick que te busca entre todos los commits de las ramas locales y te lo aplica en tu rama.

[codeblocks name=’cherry-pick’]

En esta imagen se puede ver como el commit D se aplica en master sin necesidad de traernos toda la rama new-feature gracias a git cherry-pick.

git-crash-course-for-visual-studio-devs-43-638

 

En cualquier caso, como siempre os recomiendo tener cuidado con este tipo de atajos y es fundamental tener un protocolo bien definido y ordenado para evitar este tipo de situaciones poco deseables.

Un saludo!