¿Cómo resolver el 'CONFLICTO' de Git Merge?

Como Resolver El Conflicto De Git Merge



La fusión es una parte esencial al trabajar con varias ramas de un repositorio local de Git. Es necesario cuando los desarrolladores trabajan en diferentes módulos del mismo proyecto en sucursales individuales porque los usuarios necesitan enviar todos los cambios al servidor remoto para la colaboración. Al realizar la fusión, los usuarios a menudo se encuentran con eros o conflictos. Por ejemplo, existen dos archivos con el mismo nombre en diferentes ramas. Sin embargo, el contenido de ambos archivos es diferente y quieren fusionarse. En este escenario, se producirá un conflicto.

Este artículo indicará el método para resolver el conflicto de combinación de Git.

¿Cuándo ocurre el 'CONFLICTO' de Git Merge?

El conflicto de Git ocurre cuando el mismo archivo existe en diferentes ramas con diferente contenido. Además, también puede ocurrir cuando un archivo específico se elimina de una rama pero se edita en la otra rama.







Siga los pasos mencionados a continuación para comprender cuándo se produce el conflicto de fusión:



  • Navegue hasta el repositorio indicado.
  • Genere un archivo y actualícelo.
  • Realice un seguimiento del archivo en el área de ensayo y confirme los cambios.
  • Enumere todas las ramas y cambie hacia otra rama.
  • Combinar ramas ejecutando el ' git merge ' dominio.

Paso 1: redirigir el repositorio indicado

Abra la terminal Git Bash, use el ' cd ” y navegue hacia el repositorio indicado:



cd 'C:\Usuarios\usuario\Git\projectrepo'

Paso 2: generar un archivo

Luego, crea un nuevo archivo usando el “ tocar ' dominio:





tocar archivo1.txt

Paso 3: Abrir archivo en el Editor

Utilice el “ comenzar Comando con el nombre del archivo para iniciar el archivo con el editor predeterminado:



iniciar archivo1.txt

El resultado resultante indica que se ha abierto el editor. Agregue contenido y cierre el archivo después de guardarlo:

Paso 4: Agregar archivo en el área de ensayo

Ahora, agregue el archivo modificado al área de preparación con la ayuda de “ añadir Comando para su posterior procesamiento:

añadir archivo1.txt

Paso 5: Confirmar modificaciones

Confirme todos los cambios ejecutando el comando “ git cometer ” y especifique un mensaje usando el “ -metro ' opción:

git cometer -metro 'archivo actualizado y agregado'

Paso 6: Lista de sucursales

Ahora, enumere todas las sucursales ejecutando el ' rama git ' dominio:

rama git

La imagen provista muestra que todas las ramas se han mostrado en la consola:

Paso 7: cambiar de sucursal

Para cambiar de una rama a otra, ejecute el “ pago git ” comando y agregue el nombre de la rama donde desea mover:

pago git característica2

Como resultado, hemos cambiado con éxito de la “ alfa ' hacia ' característica2 ' rama:

Paso 8: Crear un archivo

En este paso indicado, genere el mismo archivo del ' alfa ” sucursal con la misma extensión:

tocar archivo1.txt

Paso 9: Abra el archivo

Utilice el comando proporcionado para abrir el archivo con el editor predeterminado y agregar contenido:

iniciar archivo1.txt

Paso 10: Seguimiento del archivo en el área de ensayo

Ejecute el “ añadir ” para enviar el archivo desde el área de trabajo al área de ensayo:

añadir archivo1.txt

Paso 11: Confirmar cambios

Ahora, confirme los cambios ejecutando el comando que se indica a continuación junto con el mensaje de confirmación:

git cometer -metro 'archivo agregado y actualizado en la rama feature2'

Paso 12: fusionar sucursales

A continuación, utilice el ' combinación de git 'comando para fusionar' característica2 ' con el ' alfa ' rama:

combinación de git alfa

De acuerdo con la salida proporcionada, el ' CONFLICTO: Conflicto de fusión en file1.txt ” se ha encontrado:

Verifique dónde se encuentra el conflicto en el archivo especificado ejecutando el ' comenzar ' dominio:

iniciar archivo1.txt

Se puede notar que el contenido de los dos mismos archivos es diferente entre sí:

Paso 13: cancelar la fusión

Utilizar el ' combinación de git comando ” junto con el “ -abortar ” opción para eliminar la operación de fusión:

combinación de git --abortar

Avance para resolver el conflicto indicado que ocurre en la sección anterior.

¿Cómo resolver conflictos de combinación de Git?

Para resolver el conflicto de combinación de Git, siga el procedimiento que se detalla a continuación:

  • Abra el archivo donde se produce el conflicto y modifíquelo.
  • Rastree y confirme los cambios.
  • Por último, combine ambas ramas.

Paso 1: modificar el archivo

Abra el archivo con el editor predeterminado y modifique el contenido de acuerdo con el “ alfa archivo de la sucursal:

iniciar archivo1.txt

Se puede observar que el archivo ha sido modificado. Entonces presione ' CTRL+G ” y guardarlo:

Paso 2: archivo de seguimiento

Agregue el archivo del directorio de trabajo al área de preparación ejecutando el comando proporcionado:

añadir archivo1.txt

Paso 3: Confirmar cambios

Para confirmar todos los cambios, utilice el ' git cometer ' dominio:

git cometer -metro 'archivo modificado ha sido agregado'

Como resultado, los cambios se han confirmado con éxito:

Paso 4: fusionar sucursales

Ahora, ejecute el ' combinación de git ” rama junto con el otro nombre de la rama:

combinación de git alfa

Como resultado, el editor de texto se abrirá y solicitará un mensaje de confirmación de adición. Modifique el mensaje de confirmación y ciérrelo después de guardar:

El resultado indicado a continuación muestra que el conflicto de fusión de Git se resolvió y se fusionaron las ramas con éxito:

Se trata de resolver el conflicto de combinación de Git.

Conclusión

El conflicto de combinación de Git ocurre cuando el mismo archivo se modifica en dos ramas diferentes con contenido diferente. Para resolver este conflicto declarado, abra el mismo archivo y modifique su contenido de acuerdo con el otro archivo de rama. Luego, agréguelo al área de preparación y confírmelo. Por último, utilice el ' combinación de git Comando para fusionar ramas. Esta publicación ha establecido el método para resolver el conflicto de fusión de Git.