Skip to main content
  1. Learn
  2. Software Development
  3. Guides
  4. Git tutorial
  5. Cómo usar Git
  6. Cómo usar Git en Línea de Comandos
  7. Resolver un conflicto
GuidesSoftware DevelopmentBacklog
Git

Project and code management together.

Resolver un conflicto

Para proceder a subir el cambio que acabamos de hacer al repositorio remoto, debemos resolver el conflicto de forma manual. Para ello, vamos a ejecutar un pull para adquirir el conjunto de cambios más reciente del repositorio remoto.

Ejecute el siguiente comando git pull.

$ git pull origin main
  Username:
  Password:
  remote: Counting objects: 5, done.
  remote: Compressing objects: 100% (2/2), done.
  remote: Total 3 (delta 0), reused 0 (delta 0)
  Unpacking objects: 100% (3/3), done.
  From https://example.backlog.com/git/BLGGIT/tutorial.git
  * branch            main     -> FETCH_HEAD
  Auto-merging sample.txt
  CONFLICT (content): Merge conflict in sample.txt
  Automatic merge failed; fix conflicts and then commit the result.

Aparecerá un cuadro de diálogo advirtiéndonos de un conflicto de fusión.

Cuando abra sample.txt, verá marcadores añadidos por Git indicando conflictos en esa sección del archivo, como se muestra a continuación.

Anyone can learn Git with this tutorial and Backlog
add: Register a change in an index
<<<<<<< HEAD
commit: Save the status of an index
=======
pull: Obtain the content of the remote repository
>>>>>>> 17c860612953c0f9d88f313c8dfbf7d858e02e91

Vamos a resolver el conflicto aceptando ambos cambios y eliminando el marcador.

Anyone can learn Git with this tutorial and Backlog
add: Register a change in an index
commit: Save the status of an index
pull: Obtain the content of the remote repository

Una vez que hayamos resuelto el conflicto y el contenido del archivo haya cambiado, tendremos que confirmar los cambios

$ git add sample.txt
$ git commit -m "merge"
  [main d845b81] merge

Ahora estamos actualizados con el último cambio del repositorio remoto.

Podemos verificar la exactitud del historial del repositorio utilizando el comando git log. La opción --graph mostrará el historial de ramas en formato gráfico, y la opción --online intentará compactar el mensaje de salida.

$ git log --graph --oneline
  *   d845b81 merge
  |\
  | * 4c01823 append description of the pull command
  * | 95f15c9 append description of the commit command
  |/
  * 3da09c1 append description of the add command
  * ac56e47 first commit

Esto indica que los dos historiales se han fusionado correctamente con la nueva confirmación de fusión. Ahora podemos subir con seguridad este cambio al repositorio remoto sin ningún conflicto de fusión.

Subscribe to our newsletter

Learn with Nulab to bring your best ideas to life