Chuck's Academy

Rebase Interactivo en Git

Introducción al Rebase Interactivo en Git

Introducción al Rebase Interactivo en Git

El rebase interactivo en Git es una poderosa herramienta que permite editar y reordenar commits en una rama antes de aplicarlos a la rama principal. Es útil para limpiar el historial de commits, fusionar commits y resolver conflictos.

¿Qué es un Rebase Interactivo?

Un rebase interactivo te permite parar y editar commits individuales en una rama antes de que se fusionen con otra rama. Esto es especialmente útil para limpiar la historia de commits, ya que puedes combinar, modificar o eliminar commits antes de finalizar el rebase.

¿Por Qué usar Rebase Interactivo?

Algunas de las razones por las cuales podrías querer usar rebase interactivo incluyen:

  • Combinar varios commits pequeños en uno solo: Facilita la lectura del historial de commits.
  • Editar mensajes de commit anteriores: Para corregir errores tipográficos o agregar información adicional.
  • Reordenar commits: Para que tengan más sentido lógico.
  • Eliminar commits innecesarios: Que podrían contener cambios irrelevantes o erróneos.

Ejemplo Básico

Supón que tienes los siguientes commits en tu rama:

plaintext

Para iniciar un rebase interactivo, usamos el siguiente comando:

bash

Esto abrirá una interfaz donde puedes especificar qué hacer con cada commit:

plaintext

Interfaz de Rebase Interactivo

Cuando ejecutas un rebase interactivo, se abrirá tu editor de texto predeterminado con una lista de commits. Cada línea contiene el hash del commit y el mensaje del commit.

Puedes reemplazar la palabra pick al inicio de cada línea con diferentes comandos:

  • pick (o p): Usa el commit tal cual.
  • reword (o r): Edita solo el mensaje del commit.
  • edit (o e): Pausa para modificar el commit.
  • squash (o s): Combina este commit con el anterior.
  • fixup (o f): Similar a squash pero descarta el mensaje de commit.
  • exec (o x): Ejecuta un comando de shell.
  • drop (o d): Descarta el commit.

Recursos Visuales


Pregúntame lo que sea