Cómo fusionar dos ramas en Git

How Merge Two Branches Git



Cualquier repositorio de git contiene una o más ramas. El usuario de git crea diferentes ramas para almacenar archivos y carpetas según los diferentes temas. Ayuda al usuario a administrar el código fácilmente. En el proceso de desarrollo, a veces es necesario combinar una rama con la otra rama del repositorio para el propósito del proyecto. ' git merge El comando `se utiliza para esta tarea. Este comando descubre el comando de confirmación base común al examinar los dos punteros de confirmación de las ramas que se fusionan y genera una nueva combinación para combinar los cambios después de ejecutar el comando. Es necesario actualizar tanto los repositorios locales como los remotos antes de ejecutar el comando merge. En este tutorial se muestra la forma de fusionar dos ramas localmente.

Opciones de combinación de Git

Opción Objetivo
-cometer Se usa para confirmar el resultado después de la fusión, y se puede usar para anular –no-commit.
–Editar, -e Se utiliza para abrir un editor antes de confirmar la combinación para editar el mensaje de combinación generado automáticamente.
–Ff Se utiliza para resolver la fusión rápidamente, lo que significa que el puntero de la rama se utiliza para hacer coincidir la rama fusionada, pero no crea ninguna confirmación de fusión.
–No-ff Se utiliza para crear un compromiso de fusión en todos los casos de fusión.
–Ff-only Se utiliza para resolver la combinación como un avance rápido si es posible; de ​​lo contrario, rechace la combinación y salga con un estado distinto de cero.
-cerrar sesión Se utiliza para agregar el mensaje firmado por el confirmador al final del mensaje de confirmación.
–No-signoff Se usa para no agregar el firmado por línea.
-estado Se usa para mostrar un diffstat al final de la combinación.
-n, –no-stat Se utiliza para no mostrar el diffstat al final de la combinación.
–Sobrescribir-ignorar Se utiliza para sobrescribir los archivos ignorados del resultado de la combinación. Este es el comportamiento predeterminado.
-ayuda Se utiliza para obtener información detallada sobre todas las opciones de combinación.

Prerrequisitos

1. Instale GitHub Desktop
GitHub Desktop ayuda al usuario de git a realizar las tareas relacionadas con git de forma gráfica. Puede descargar fácilmente el último instalador de esta aplicación para Ubuntu desde github.com. Debe instalar y configurar esta aplicación después de la descarga para usarla. También puede consultar el tutorial para instalar GitHub Desktop en Ubuntu para conocer el proceso de instalación correctamente.







2. Crea una cuenta de GitHub
Deberá crear una cuenta de GitHub para verificar los comandos utilizados en este tutorial.



3. Cree un repositorio local y remoto
Debe utilizar un repositorio local con varias ramas que se publican en el servidor remoto para comprobar los comandos utilizados para fusionar dos ramas del repositorio local.



Fusionar dos ramas de un repositorio local

Ejecute el siguiente comando para verificar la lista de sucursales del repositorio local llamado subir archivo .





$ git branch

El siguiente resultado muestra que el repositorio contiene tres ramas, y el principal rama está activa ahora.



Ejecute el siguiente comando para fusionar el contenido de una rama a otra. El primero verificar el comando cambiará al Maestro rama. los agregar comando agregará el upload4.php archivo en el repositorio. los cometer comando agregará el mensaje de confirmación. A continuación, el segundo comando de pago cambiará al principal rama. los ir El comando combinará el contenido del Maestro rama con el principal rama.

$ git checkout master
$ git agregar upload4.php
$ git commit -m 'Subir archivo de texto'.
$ git checkout principal
$ git merge master

La siguiente salida aparecerá después de ejecutar los comandos anteriores si el upload4.php El archivo existe en la ubicación actual.

Si el Maestro no es necesario que la rama exista en el repositorio después de fusionar el contenido con el principal rama, luego puede eliminar la Maestro rama. El primer comando de rama mostrará la lista de ramas existente antes de eliminar. El comando de rama con el -D la opción eliminará el Maestro rama. El último comando de rama mostrará la lista de ramas existente después de eliminar.

$ git branch
$ ls
$ git branch -d master
$ ls
$ git branch

La siguiente salida aparecerá después de eliminar la rama.

Ejecute los siguientes comandos para crear una nueva rama llamada temperatura , agregue un archivo llamado upload5.php y confirmar la tarea con un mensaje de confirmación. los verificar comando con el -b La opción creará la nueva rama. los agregar El comando agregará el nuevo archivo al repositorio. los cometer El comando confirmará la tarea con el mensaje de confirmación.

$ git checkout -b temp
$ git agregar upload5.php
$ git commit -m Subir archivo de imagen

La siguiente salida aparecerá después de ejecutar los comandos anteriores si el upload5.php El archivo existe en la ubicación actual.

Ejecute los siguientes comandos para verificar la lista de ramas actual, combine la rama temporal con -No lo apague opción, y elimine la temperatura rama si no necesita más.

$ git branch
$ git merge --no-ff temp
$ git branch -d temp

La siguiente salida aparecerá después de ejecutar los comandos anteriores.

Si el repositorio se abre desde el Escritorio de GitHub, entonces aparecerá la siguiente información. El historial del repositorio muestra todas las tareas que se han realizado ejecutando los comandos git desde la terminal en la parte anterior de este tutorial. En la lista del historial se muestran dos mensajes de confirmación y dos operaciones de combinación. Todas estas tareas se han realizado solo en el repositorio local. Si desea actualizar el contenido del repositorio remoto con el nuevo cambio del repositorio local, haga clic en el Extraer origen botón del Escritorio de GitHub .

Conclusión

Fusionar ramas es una característica útil de la rama cuando los usuarios de git quieren combinar el contenido de dos ramas. En este tutorial se muestra la forma de fusionar dos ramas existentes y fusionar ramas creando una nueva rama. Si no desea escribir comandos en la terminal, puede usar la aplicación GitHub Desktop para fusionar dos ramas del repositorio.