What are A, B, and C in KDIFF merge

Version ControlMergeKdiff3

Version Control Problem Overview


Why am I given three choices when merging between my code and someone else's? Shouldn't there just be my code, the other person's code, and the output below? The documentation for KDIFF doesn't help me understand.

Version Control Solutions


Solution 1 - Version Control

A refers to the version your merge target is based on. If you Merge from branch to trunk, 'A' will be the previous trunk version.

B is what you currently have in your local trunk folder, including local changes.

C is the Version you wanna merge on top of B.

Solution 2 - Version Control

Sounds like you're doing a three-way merge, so A should be the base revision that B and C are based on, B is theirs and C is yours (I believe; B and C might be the opposite, though).

Solution 3 - Version Control

A (BASE) ‐‐> Original file that currently sits in remote repo.
B (LOCAL) ‐‐> Your file. This shows only your changes as compared to A.
C (REMOTE) ‐‐> Their file. This shows only their changes as compared to A.

If the changes are on different code lines, you take from both B and C. If the changes are on same code lines (conflict), you take either from B or C.

Solution 4 - Version Control

A is your parent revision having B and C as child.
Which means B contains the changes done on A by user1/repo1 and C also contains the changes on A but by other user (user2/repo2)

kdiff gives you the option either to select modification from b or c (or take both) or from parent also 'A'

Solution 5 - Version Control

If I did git rebase, my observation was that: C - is what in my_branch locally ( i.e. was seen in my editor before the rebase started and conflicts occurred). B - branch I was rebasing my_branch on top of (say master branch for example) A - base revision of B & C (which didn't matter to me too much in this case)

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionsmuggledPancakesView Question on Stackoverflow
Solution 1 - Version ControlTh 00 mÄ sView Answer on Stackoverflow
Solution 2 - Version ControleldarerathisView Answer on Stackoverflow
Solution 3 - Version ControlNikhil VartakView Answer on Stackoverflow
Solution 4 - Version ControlRollerCostaView Answer on Stackoverflow
Solution 5 - Version ControlAleks TkachenkoView Answer on Stackoverflow