Bug回放:
纳尼? workspace中主工程文件GovCn目录没了本小猿刚提交了一些图片,继续激情的敲代码中,然后另一小媛一脸怀笑的出现在背后,“我刚提交了一些图片,你更新一下”,“好的”,then。。。
惊吓 GovCn.xcodeproj损坏了吓得我赶紧打开主GovCn.xcodeproj文件,结果。。。
翻译:项目“GOVCN”损坏,由于解析错误无法打开。检查项目文件是否有无效编辑或未解决的源代码冲突。
暂停Bug
容我冷静一下知识点:Xcode的工程文件是 工程名.xcodeproj,而它其实是个package目录,通过显示包内容,可以查看到它内部主要有project.pbxproj 和 xcuserdata。其中,xcuserdata 一般是跟用户相关的一些设置,如断点 记录等,一般不用放到版本管理中。而project.pbxproj 是工程描述文件,描述了工程里的源码文件、schema设置等。它的格式是文本类型的plist(Info.plist是binary plist),里面是一个一个的object。 ------- 摘自iOS 开发 xcode中的project.pbxproj--深入剖析
- 冷静想了一下,应该是因为我俩同时提交了图片,工程 GovCn.xcodeproj 文件冲突了,然后还是会强制更新,内部配置文件 project.pbxproj 出现了冲突,然后就解析不了了。这时,如果是svn就会强制在 project.pbxproj 文件中给你加上<<<<< .mine ...... ======= ...... >>>>> .r33299 来区分谁谁做的修改,只要把这个文件用编辑器打开,把这些<>标记的冲突内容都删除,然后工程就能正常打开显示了。打开之后,工程里关于图片的配置信息都没了,但图片源文件还存在源目录下,重新导入一下就OK了。
修理Bug
显示包内容,找到project.pbxproj 删除冲突标记内容 赞赞.gif好了,开始修理Bug,除了修改 project.pbxproj ,我们还可以粗暴的用上一个版本的project.pbxproj直接把它覆盖掉,太粗暴了O(∩_∩)O
感谢以下大佬:
https://www.jianshu.com/p/e82ec6a56fc2
https://blog.csdn.net/kuangdacaikuang/article/details/52987132
https://www.jianshu.com/p/dd58925dfa5d![sabo.png]
网友评论