I'm working on this ... Robert's fix is a step in the right direction but there is quite a bit more to do.
First, the current code explicitly only rebases a left-most path, which AFAICS is just completely wrong.
Second, the parent selection logic needs to be rewritten.
Intertwined with that, there's the conundrum of --always-rebase-merges - a behaviour I would make default and mandatory, since the opposite has the potential to discard desired changes made as part of conflict resolution.
I'm working on this ... Robert's fix is a step in the right direction but there is quite a bit more to do.
First, the current code explicitly only rebases a left-most path, which AFAICS is just completely wrong.
Second, the parent selection logic needs to be rewritten.
Intertwined with that, there's the conundrum of --always- rebase- merges - a behaviour I would make default and mandatory, since the opposite has the potential to discard desired changes made as part of conflict resolution.