I'm interested in understanding two-way and three-way merging of source code files. Based on what I've read, two-way merging has some "crippling weaknesses" compared to three-way merging. What I'd really like to see are one or two simple, concrete examples of cases where three-way merging is able to automatically merge something from a branch to the trunk without producing conflicts, while two-way merging falls down and requires a bunch of manual intervention to get the code merged.
Any links to blog posts or even references to books would be appreciated (yes, I have Googled this for an hour or so). Thanks!