Kallin Nagelberg Kallin Nagelberg - 11 months ago 53
Git Question

determining which branches in conflict during an octopus merge

We are trying to institute a process using git octopus merges to consolidate many topic branches for regular releases. When there is a conflict it doesn't seem to output which branches were in conflict. Does anyone know a way to determine what branches the conflicts came from after an octopus merge?


Answer Source

The git merge man page mentions:


This resolves cases with more than two heads, but refuses to do a complex merge that needs manual resolution. It is primarily meant to be used for bundling topic branch heads together. This is the default merge strategy when pulling or merging more than one branch.

And this thread does indeed illustrate that:

The octopus strategy cannot do merges which need manual resolution. Or so the doc says. After trying the merge with 4 2 5, Git tells you:

Trying simple merge with 7ff9b5bd514cb600bac935ebd40eae366bba7d19
Trying simple merge with 6872cd350154743d59cb4d313cbdb122ac43e537
Simple merge did not work, trying automatic merge.
Auto-merging file.txt
ERROR: content conflict in file.txt
fatal: merge program failed
Automated merge did not work.
Should not be doing an Octopus.
Merge with strategy octopus failed.

That is, it aborts the merge completely. If you "resolve" it and commit it's simply a commit that you make.