A number of merge cases are currently not handled in a clean way. This is not user-friendly and can be difficult for regular users to resolve. Ideally, rather than automatically aborting in these cases, we should present users with a dialog allowing them to choose the type of resolution they want.
Note: only a few cases remain, most were solved by sid0 already.
Different problematic cases
hg init foo cd foo touch bar hg add hg commit -m "add bar" touch woop hg add hg commit -m "add woop file" hg up -r 0 mkdir woop touch woop/somefile hg add hg commit -m "add woop directory" hg merge
abort: Is a directory: '/tmp/foo/woop'
remote created file while local created directory keep (d)irectory, keep (f)ile, or leave (u)nresolved?
Alternatively, the same output as for a 'file/symlink' conflict could be used. That case is handled properly.