1

¿Cómo solucionar conflictos?

Como ya hemos estado viendo a lo largo del curso, las ramas sirven para poder experimentar con algunas partes del código y después combinarlo o hacer “merge” con otra rama. Sin embargo, cuando se modifican dos ramas con el mismo código y ese código es distinto es cuando ocurre un conflicto, ya que es como si se quisiera combinar dos cosas diferentes en uno solo y en esos casos el “merge” no se puede realizar.

En caso de que esto te pase hay una solución muy buena que te ayudara a lidiar con estos conflictos.

Cuando te sale un conflicto te aparece algo como los siguiente:

Auto-merging post.html
CONFLICT (content): Merge conflict in post.html
Automatic merge failed; fix conflicts and then commit the result.

En este caso el conflicto esta en post.html, pero en tu caso esto puede variar, dependiendo del nombre y tipo del archivo en conflicto.
Después al ponerle el comando git status es cuando nos aparece cual puede ser la solución.

On branch master
You have unmerged paths.
  (fix conflicts and run "git commit")
  (use "git merge--abort" to abort the merge)

Unmerged paths:
  (use"git add ..."to mark resolution)
        both modified:   post.html

no changes added tocommit (use"git add"and/or"git commit -a")

Por ejemplo, en ese caso nos dice como podemos deshacer el commit (ya que hay que recordar que todos los merge son en efecto commits) o en su defecto nos dice que podemos marcar las resoluciones con git add. Entonces, como estamos en la rama master, lo que nos toca hacer es simplemente decidir cual va a ser el valor que queramos en los archivos que tengan conflicto y hacemos un commit y de esa forma la rama master va a quedar justo como queremos que quede, sin ningún tipo de conflicto.

Source: https://aulasoftwarelibre.github.io/taller-de-git/
Original author: https://github.com/sgomez

Escribe tu comentario
+ 2