Doplax.Dev
  • Home
  • About me
  • Blog
  • Work Experience
  • Contact
  • Home
  • About me
  • Blog
  • Work Experience
  • Contact

Got a project in mind or just want to say hi?

Get in touch

© 2026 Doplax.Dev — All rights reserved.

September 10, 2024

Cómo Modificar un Commit Anterior Usando Git Rebase

  • Git

Cuando trabajas en una rama y te das cuenta de que necesitas agregar cambios a un commit que no es el último, puedes hacerlo usando el comando git rebase -i. Esto te permite reescribir la historia de tu rama de manera controlada.

Pasos para añadir cambios a un commit anterior:

  1. Prepara los cambios: Asegúrate de que los archivos modificados estén preparados (staged).
git add <archivo>  # o "git add ." para añadir todos los cambios
  1. Ejecuta un rebase interactivo: Decide hasta qué punto en la historia de tu rama quieres reescribir, por ejemplo:
git rebase -i HEAD~3
  1. Selecciona el commit a modificar: Cuando el editor de texto abra la lista de commits, cambia el pick del commit que quieres modificar por edit.
pick <commit_hash_1> [BackEnd] feat(users): Implementa paginación
edit <commit_hash_2> [FrontEnd] feat(users): Implementa paginación
  1. Realiza el commit de los nuevos cambios: Después de que el rebase se detenga en el commit que elegiste, añade los nuevos cambios al commit original usando:
git commit --amend --no-edit
  1. Continúa el rebase: Termina el proceso ejecutando:
git rebase --continue
  1. Empuja los cambios al repositorio remoto: Si ya habías hecho un push, tendrás que forzar el push para actualizar el repositorio remoto:
git push --force-with-lease

Diferencia Entre -force y -force-with-lease

Cuando necesitas forzar un push tras modificar el historial de commits, puedes usar dos comandos: --force o --force-with-lease.

  1. git push --force: Este comando sobrescribe el historial remoto sin hacer verificaciones. Es peligroso si trabajas en equipo, ya que puede borrar los commits de otras personas sin advertencia.
  1. git push --force-with-lease: Este comando fuerza el push, pero primero verifica si alguien más ha hecho cambios en el repositorio remoto. Si hay nuevos commits que no tienes, aborta la operación para que revises antes de sobrescribir.

¿Cuál es mejor?

  • Usa -force solo cuando estás absolutamente seguro de que no hay cambios en el repositorio remoto y trabajas solo en la rama.
  • Usa -force-with-lease si trabajas en equipo, ya que reduce el riesgo de sobrescribir cambios de otros colaboradores.

Resumen

  • Modificar commits anteriores con git rebase -i es útil para limpiar el historial de commits.
  • La opción -force-with-lease es más segura que -force porque protege el trabajo colaborativo.

CTA (Llamado a la acción): Si quieres aprender más sobre cómo gestionar eficientemente tus commits en Git y evitar sobrescribir el trabajo de otros, visita el enlace en mi perfil para leer el artículo completo en el blog. ¡Descubre cómo dominar Git en entornos colaborativos!

PreviousComo instalar una fuente en AngularNextComo eliminar un commit concreto

Written by Pol Valle

Written by Pol Valle

I'm particularly drawn to building apps that are not only functional but also visually appealing and easy to use. I do it by applying SOLID principles, clean architecture and testing to ensure quality.