I do not understand why the octopus merges here (msysgit1.6.5 in a DOS session).
Octopus for a single merger with multiple parents.
If I follow the โtwo modifications in the remote repo to backtrackโ routine, this is what I see before the final merge (pull after one round):

chgB (from the main, that is, the "source") and chgA (from the remote " mainA ") are combined one after another in master .
Two other changes were made and received: chgB2 from the source and chgA2 from mainA .
If I try to merge only mainA/master , I get:

chgA2 been merged. chgB2 from "main" (origin) is still hanging there ...
But if I try one more change in mainA and mainA both remote repositories in the merge command, the trenches merge:
C:\Prog\Git\tests\octo\dest1>git merge origin/master mainA/master Trying simple merge with 9e3e16d8e75cec3be621c47fb72e955cc2574f0f Trying simple merge with 4dfb282a31d5bafddb244c84b66ede41e28f1042 Merge made by octopus. a.txt | 2 +- b.txt | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-)

source share