Hace algunos días, me encontraba trabajando en un proyecto, específicamente en una rama. Al terminar una funcionalidad, nos dimos cuenta de que no podíamos desplegar dicha rama en nuestro servidor de pruebas. Se me ocurrió la idea de trasladar ese código a la rama de pruebas. La solución más obvia era copiar y pegar manualmente los cambios, pero el problema era que habían modificaciones en varios archivos, lo que complicaba el proceso.

Después de investigar en internet, descubrí una funcionalidad de Git llamada Cherry Pick, y en este artículo quiero darte una breve guía sobre cómo utilizarlo.

¿Qué es Cherry Pick?

El comando git cherry-pick permite aplicar los cambios de un commit específico en otra rama. Esto es útil cuando realizaste modificaciones en una rama y necesitas trasladarlas a otra sin fusionar todo el historial de cambios.

Por ejemplo, si hiciste cambios en dos archivos dentro de un commit, cherry-pick intentará replicar esos mismos cambios en la rama destino, manteniendo la estructura del código intacta.

¿Cómo se usa Cherry Pick en Git?

Sigue estos pasos para aplicar un commit específico a otra rama:

1. Identifica la rama origen: Ubica la rama donde se encuentra el commit que quieres traer.

cherry pick

2. Obtén el hash del commit: Usa git log --oneline o revisa tu historial en Git para encontrar el identificador del commit.

cherry pick

3. Cambia a la rama destino: Ve a la rama donde deseas aplicar los cambios con git checkout <nombre-de-la-rama>.

4. Ejecuta el comando Cherry Pick:

git cherry-pick <hash-del-commit>

5. Resuelve posibles conflictos: Si Git detecta conflictos, deberás resolverlos manualmente antes de continuar.

6. Confirma los cambios: Una vez aplicado el commit, no olvides hacer un git commit y subir los cambios con git push.

Conclusión

Ahora conoces git cherry-pick, una herramienta útil para trasladar cambios específicos entre ramas sin necesidad de hacer un merge completo. Este comando puede ahorrarte tiempo y facilitar tu flujo de trabajo como desarrollador.

Si te gustó este artículo y quieres aprender más sobre Git y desarrollo web, ¡no olvides visitar mi blog para más consejos! 🚀


Sobre el Autor:

Marco Antonio Bustillos Quiroz
Bachelor of Science in Web Design and Development (BYU-Idaho)
Full Stack Web Developer con más de 7 años de experiencia en desarrollo Front End y 5 años en desarrollo Back End. Mis proyectos incluyen sitios web, landing pages, aplicaciones web, REST APIs, e-commerce, y mucho más. Mi pasión es crear experiencias digitales impactantes y compartir conocimientos con otros desarrolladores.