This scenario doesn't really make sense...
Firstly, if there is a conflict, then that conflict only exists on the one merge commit, which doesn't exist yet! (It's still on the user's machine, possibly in the index, but certainly not even in their local tree).
The other users do not have a conflict at all, until they do a merge, or rebase.
Supposing you do have three users doing the exact same merge, for whatever the reason may be, and therefore they have the same conflicts.
Lets further suppose that they, as you suggest, each have a conflict that only they can reconcile, then they should each rebase their work on the latest version of the code, and reconcile any conflicts in the process.
In other words, the situation you seem to be describing is as follows: (Correct me if I'm wrong):
- We have three devs, Charlie, John, and Matt, who are all working off the master branch, which is at commit aaaaaaa.
- They all also work on an 'unstable' branch, which is at commit bbbbbbbb, which has diverged from 'master'.
- They all, at the same time, decide that they should merge the 'unstable' branch into 'master', individually.
- They all, at the same time, realise that they have commits they can't reconcile.
Ideally, what should be done in this situation, is that 'unstable' should be merged in by any developer who knows how to do the merge. Perhaps they will choose to merge it a few commits at a time, rather than directly merge the two heads, or perhaps they choose to rebase the whole thing - whatever, but only one developer needs to do this.
The more frequently this is done, the easier the merge/rebase operation will be.
The remaining developers will then be able to use the merge commit.