My company iPhone / ipad-product has transferred several generations of iOS and Xcode (now on 5.1 and 4.3) and has many goals. Perhaps due to these factors, there are many identical lines for each source file in the PBXBuildFile section, for example:
14EE4CD315A5E69000DCA763 / * movie@2x.png in Resources * / = {isa = PBXBuildFile; fileRef = 14EE4CB615A5E68500DCA763 / * movie@2x.png * /; };
14EE4CD415A5E69000DCA763 / * movie@2x.png in Resources * / = {isa = PBXBuildFile; fileRef = 14EE4CB615A5E68500DCA763 / * movie@2x.png * /; };
14EE4CD515A5E69000DCA763 / * movie@2x.png in Resources * / = {isa = PBXBuildFile; fileRef = 14EE4CB615A5E68500DCA763 / * movie@2x.png * /; };
14EE4CD615A5E69000DCA763 / * movie@2x.png in Resources * / = {isa = PBXBuildFile; fileRef = 14EE4CB615A5E68500DCA763 / * movie@2x.png * /; };
14EE4CD715A5E69000DCA763 / * movie@2x.png in Resources * / = {isa = PBXBuildFile; fileRef = 14EE4CB615A5E68500DCA763 / * movie@2x.png * /; };
Please note that the lines for this source file are absolutely (I was wrong, they are not exactly ...) identical, and the number of repeated lines varies from one to one and a half dozen or more. Because of this duplication, the project.pbxproj PBXBuildFile section is nearly 5,000 lines long, although we really only have about 1,200 unique files.
Before I dig up a script to remove all of these duplicate lines and ask for a full regression test for all assemblies and purposes, I would be sure that Xcode does not need these duplicate lines for some secret reason.
I am sure that this was not caused by verified version control; duplicate lines appear only in the PBXBuildFile section, and although I do not like P4, we have few problems merging changes to the project.pbxproj file, although this is a little cumbersome on almost 20,000 lines. I think some release of Xcode did this, perhaps with the addition of new goals, but I did not find anyone to complain about this problem.
Secondary Questions: How did this happen? Has anyone else found these duplicate lines?
Taryn
source share