A NIB is a “NeXT Interface Builder” file, which is one way of representing an iPhone user interface. There are other ways of representing UIs, too. And NIBs also are used for Mac OS X apps.
FileMerge is Apple’s visual diff tool. XIBs are the new version of NIBs, and use an XML representation that is supposed to be diff-friendly. And for the most part, it is. But FileMerge doesn’t like it:

Sometimes people like to say that things “just work” on a Mac. Not so. Maybe it’s because I actually know how to use Windows, but the fact of the matter is, I have just as many frustrations with my OS as a full-time Mac user as I did when I was a full-time Windows user. Mac OS X has tons of quirks and aggravating eccentricities, and yes, they remain in Snow Leopard.
Now go get yourself a decent computer running Windows 7 =P
Adversite here
Comments
The reason FileMerge refuses to merge .xib files is because a .xib is an object graph. As such, what appears to be a clean merge will often result in an invalid .xib.
It’s intensely irritating that IB objects don’t have a merge friendly serialization, but it’s better to refuse to shoot you in the foot than blithely do something that won’t work.
Grep for “textual merge” in:
http://developer.apple.com/Mac/library/documentation/DeveloperTools/Conceptual/IB_UserGuide/BuildingaNibFile/BuildingaNibFile.html
Leave A Comment