I apologize if this was answered somewhere in full, obviously and many times, as it probably already is; but I could not find information about this particular problem that I received after searching for at least a week.
To simplify, we have 3 people who are working on the project, each person has his own branch, which we are regularly going to merge back into the trunk trunk. The problem is that we either encounter conflicts (trying to choose a cherry pick), or simply rewrite all the wizard files and the first two branches combined with the last, without actually quarreling, just overwriting.
My problem (hopefully) is simple:
Trunk line
string test1; string test2; string test3;
branch test1
string test1 = "Dan Branch merged"; string test2; string test3;
branch test2
string test1; string test2 = "Dave Branch merged"; string test3;
test3 branch
string test1; string test2; string test3 = "Will Branch merged";
The desired output when combining all 3 branches:
string test1 = "Dan Branch merged"; string test2 = "Dave Branch merged"; string test3 = "Will Branch merged";
What I actually get when I try to combine tests 1 and 2:
Auto merge error; fix conflicts and then record the result.
<<<<<<< HEAD + String test1 = "Dan Branch merged"; + String test2; + String test3; ======= + String test1; + String test2 = "Dave Branch merged."; + String test3; >>>>>>> test2
I am currently using git-gui on Windows (with a bash / shell / cli transition plan when I finally hugged git), so if possible, be great if any answers were given specifically for git-gui, but, of course, beggars cannot be choices.
Trying to keep things simple, the repository is on the local network, and not on any server. I do not know if this affects the implementation (I would suggest that push and pull would not be used if I guessed correctly about their use)
Currently, Git is referred to as a method of storing and viewing old versions, since all merges are done manually.