Rebase de ramas en Git

Ramificación significa separarse de la rama maestra para que pueda trabajar por separado sin afectar el código principal y otros desarrolladores. Al crear un repositorio Git, por defecto se nos asigna la rama master. A medida que comenzamos a realizar confirmaciones, esta rama maestra sigue actualizándose y apunta a la última confirmación realizada en el repositorio.
La ramificación en Git se ve así:

rebase

Rebasar en Git es un proceso de integración de una serie de confirmaciones sobre otra sugerencia base. Toma todas las confirmaciones de una rama y las agrega a las confirmaciones de una nueva rama. Git rebase se ve de la siguiente manera:

La sintaxis técnica del comando rebase es:

git rebase [-i | –interactivo] [ opciones ] [–ejec cmd] [–en nueva base | –keep-base] [aguas arriba [rama]]

Uso:
El objetivo principal de la reorganización es mantener un historial de proyectos cada vez más limpio y ordenado. Rebasar da lugar a un historial de proyecto perfectamente lineal que puede seguir la confirmación final de la función hasta el comienzo del proyecto sin siquiera bifurcarse. Esto hace que sea más fácil navegar por su proyecto.

Estándar v/s Rebase interactivo

Git rebase está en modo interactivo cuando el comando rebase acepta un argumento —i . Esto significa Interactivo. Sin ningún argumento, el comando se ejecuta en modo estándar.

Para lograr el rebase estándar, seguimos el siguiente comando:

git rebase master branch_x

where branch_x is the branch we want to rebase

El comando anterior es equivalente al siguiente comando y tomará automáticamente las confirmaciones en su rama de trabajo actual y las aplicará al encabezado de la rama que se mencionará:

git rebase master

Mientras que, en el cambio de base interactivo, puede modificar confirmaciones individuales a medida que se mueven a la nueva rama. Le ofrece un control completo sobre el historial de confirmaciones de la rama.
Para lograr el rebase interactivo, seguimos el siguiente comando:

git checkout branch_x
git rebase -i master

Este comando enumera todas las confirmaciones que están a punto de ser movidas y solicita reorganizar todas las confirmaciones individualmente y luego reorganizarlas de acuerdo con las opciones que ingresó. Esto le da un control completo sobre cómo se ve el historial de su proyecto.

Fusión v/s Rebase

Tanto fusionar como reorganizar se usan para fusionar ramas, pero la diferencia radica en el historial de confirmaciones después de integrar una rama en otra. En la fusión de Git, las confirmaciones de todos los desarrolladores que hicieron confirmaciones estarán allí en el registro de git. Esto es realmente bueno para los principiantes porque la cabeza se puede retroceder para confirmar desde cualquiera de los desarrolladores. Mientras que, en git rebase, la confirmación de un solo desarrollador se marcará en el registro de git. Los desarrolladores avanzados prefieren esto porque hace que el historial de confirmaciones sea lineal y limpio.
El comando para fusionar se da como:

git merge branch_x master

Esto crea una nueva confirmación en la rama fusionada que une las historias de ambas ramas, brindándole una estructura de rama que se ve así en lugar de reorganizar lo que vimos anteriormente:

Nota: Después de realizar la reorganización, estamos por defecto en la última confirmación de la rama reorganizada.

Publicación traducida automáticamente

Artículo escrito por vanigupta20024 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *