portable version-control merge kdiff3

version-control - portable - kdiff3 git



¿Qué son A, B y C en la fusión KDIFF? (5)

A (BASE) ‐‐> Archivo original que actualmente se encuentra en el repositorio remoto.
B (LOCAL) ‐‐> Su archivo. Esto muestra solo tus cambios en comparación con A.
C (REMOTO) ‐‐> Su archivo. Esto muestra solo sus cambios en comparación con A.

Si los cambios están en diferentes líneas de código, tomas tanto de B como de C. Si los cambios están en las mismas líneas de código (conflicto), tomas de B o C.

¿Por qué me dan tres opciones al fusionarme entre mi código y el de otra persona? ¿No debería haber solo mi código, el código de la otra persona y la salida a continuación? La documentación para KDIFF no me ayuda a entender.


Parece que estás haciendo una combinación de tres vías , por lo que A debería ser la revisión base en la que B y C se basan, B es de ellos y C es tuya (creo que B y C podrían ser lo contrario).


A es la revisión de tus padres que tiene B y C como hijo .
Lo que significa que B contiene los cambios realizados en A por usuario1 / repo1 y C también contiene los cambios en A pero por otro usuario ( usuario2 / repo2 )

kdiff le da la opción de seleccionar la modificación de b o c (o tomar ambas cosas) o del padre también ''A''


A se refiere a la versión en la que se basa su combinación de objetivos. Si se fusiona de rama a troncal, ''A'' será la versión anterior del troncal.

B es lo que tiene actualmente en su carpeta troncal local, incluidos los cambios locales.

C es la versión que quieres fusionar encima de B.


Si hice git rebase , mi observación fue que: C - es lo que está en my_branch localmente (es decir, se vio en mi editor antes de que comenzara la rebase y ocurrieran conflictos). B: sucursal Estaba rebasando my_branch encima de (por ejemplo, rama principal, por ejemplo) A: revisión básica de B & C (lo que no me importaba demasiado en este caso)