repositorio - git push tag
¿Cómo sucede exactamente un conflicto de fusión de git? (2)
Tendrás un conflicto si fusionas:
-
branch2
paramaster
(sin conflicto) -
branch3
paramaster
(conflicto):
Eso es porque:
- El ancestro común sería el
master
(con una segunda línea vacía) - el contenido fuente es
branch3
(con una segunda línea que incluye "3") - el contenido de destino está en el último de
master
(con una segunda línea que incluye "2", desde la combinación debranch2
amaster
)
Git le pedirá que elija el contenido que desea conservar ("3", "2" o ambos).
Primero, haz las fusiones después de:
git config merge.conflictstyle diff3
Consulte " Solucionar conflictos de combinación en Git? ".
He hecho un repositorio git y le agregué un archivo de texto. Esto es 100% para fines de aprendizaje.
Agregué "1" al archivo de texto y lo confirmé al maestro.
Creé una nueva rama del maestro y añadí "2".
Finalmente, se creó una rama desde el maestro y se anexó "3".
¿Podría explicar cómo puede ocurrir un conflicto en este o en cualquier otro escenario?
Un conflicto de combinación ocurre cuando dos ramas modifican la misma región de un archivo y posteriormente se combinan. Git no puede saber cuál de los cambios debe mantener y, por lo tanto, necesita la intervención humana para resolver el conflicto.
En este caso, los pasos 2 y 3 crean dos ramas que tienen cambios en conflicto.