or you don't and you probably shouldn't be the one merging it anyway...
My first job as a "build master", I didn't know any better when I started. They just tossed this responsibility onto me, and taught me how to merge up and down in the tree. It's given me exposure to a lot of different code though. And also showed me why merge up and down was a bad idea. Much more prefer merge down copy up.
Thankfully the projects after that were more sane with merges. Generally it was a common engine used between projects, and the only merges I was handling was pulling from the shared area into the specific project team I was part of.
Only this most recent job put me back in a similar position as my first with merges, but I switched them to merge down and copy up practices. Experience in the past paid off to avoid some pain again

Also, the image of a bunch of ObjC programmers worrying about the readability of another language is priceless

Hehe, indeed. Though to be fair, these developers day to day work in C# and C++, we are a mostly Windows shop expanding a little to other platforms.