Jugar
← Volver al blog

18 de abril de 2026

Git cherry-pick: qué es, cuándo usarlo y por qué puede salvarte tiempo

Aprende qué hace Git cherry-pick, en qué situaciones conviene usarlo y por qué es una herramienta muy útil para mover commits concretos entre ramas.

git cherry-pick

Toma un commit específico de cualquier rama y aplícalo donde lo necesites — sin traer el historial completo. Es cirugía de precisión sobre tu repositorio:
"quiero este cambio, no todo el resto".

A diferencia de merge o rebase, cherry-pick no mueve el commit original. Crea uno nuevo con el mismo contenido y un hash distinto.


El problema que resuelve

Escenario típico:

main→producción estable
develop→desarrollo activo, no listo para deploy
fix/bug-123→hotfix crítico ya mergeado en develop

Hacer merge de develop completo sería peligroso — arrastraría features incompletas. Esperar tampoco es opción. Cherry-pick lleva solo ese commit a producción.


Cómo usarlo

  1. Muévete a la rama destino
    git checkout main

  2. Aplica el commit por su hash
    git cherry-pick <hash>
    Se crea un nuevo commit en main con ese cambio exacto.

  3. Varios commits a la vez
    git cherry-pick <hash1> <hash2>
    # o por rango (excluye A, incluye hasta B)
    git cherry-pick A..B

  4. Si hay conflictos
    git status
    git add .
    git cherry-pick --continue
    # o abortar por completo
    git cherry-pick --abort


Cuándo usarlo y cuándo no

Úsalo cuando…

  • Necesitas un hotfix urgente en producción

  • Un commit se hizo en la rama equivocada

  • Quieres mover cambios puntuales entre ramas

  • Un merge completo es demasiado riesgoso

Evítalo cuando…

  • Los commits dependen unos de otros

  • Lo estás usando como hábito diario

  • El flujo se vuelve "copiar y pegar commits"

  • Genera más conflictos de los que resuelve

Abusar de cherry-pick duplica commits, enreda el historial y complica el trabajo en equipo. Es una herramienta de rescate, no un workflow.


Cherry-pick vs merge vs rebase

Comando

Qué hace

merge
Une historiales completos de dos ramas
rebase
Reescribe el historial para reorganizar commits
cherry-pick
Copia commits específicos a otra rama

Ejemplo real — bug crítico en producción

  1. Bug detectado en producción

  2. Fix desarrollado y revisado en develop

  3. cherry-pick del commit a main

  4. Deploy a producción

  5. develop sigue su curso normal

Resultado

  • Producción estable

  • Sin features incompletas

  • Sin riesgos innecesarios

Sin cherry-pick

  • Merge peligroso de develop

  • Features a medio terminar en prod

  • Deploy bloqueado o arriesgado


Cherry-pick es un bisturí, no una motosierra.

No gana quien más comandos sabe, sino quien sabe cuándo usarlos.


Practica los que has aprendido Aqui 👈