Cuando se utiliza una herramienta como git para fusionar dos archivos, se puede detectar un conflicto y agregarlo al resultado de la fusión.
Una fusión de estos dos archivos:
mi archivo:
Common line of code 1
Common line of code 2
my lines
Common line of code 3
Common line of code 4
su archivo:
Common line of code 1
Common line of code 2
their lines
Common line of code 3
Common line of code 4
daría como resultado:
Common line of code 1
Common line of code 2
<<<<<<< Mine
my lines
=======
their lines
>>>>>>> Theirs
Common line of code 3
Common line of code 4
Ver líneas de marcador de conflicto
Resolver este conflicto con Mine crearía este archivo:
Common line of code 1
Common line of code 2
my lines
Common line of code 3
Common line of code 4
Resolver este conflicto con Theirs crearía este archivo:
Common line of code 1
Common line of code 2
their lines
Common line of code 3
Common line of code 4
El objetivo de este desafío es escribir un archivo fuente que contenga un conflicto y que aún se compile / ejecute.
Escriba un archivo fuente que:
- contiene una válida, de dos vías, el conflicto marcado por los marcadores adecuados conflicto parche (
<<<<<<<
,=======
,>>>>>>>
) Mina y la de ellos descriptores de archivos después de que los marcadores son opcionales. - compila / ejecuta sin errores / advertencias si los marcadores siguen siendo parte de la fuente
- compila / ejecuta sin errores / advertencias si el conflicto se resuelve usando el mío
- compila / ejecuta sin errores / advertencias si el conflicto se resuelve usando los suyos
- genera "Hello Conflict" al compilar / ejecutar el archivo en conflicto
- genera "Hello Mine" al compilar / ejecutar la versión minera
- genera "Hello Theirs" al compilar / ejecutar la versión de ellos
Los marcadores deben ubicarse en el archivo fuente de manera que kdiff3 reconozca el conflicto.
Las lagunas estándar están prohibidas.
El código más corto gana.
La puntuación es la longitud de la fuente en conflicto