使用文本编辑器打开project.pbxproj文件观察文件结构,项目结构变化影响的是以下几个section的值,也是冲突所在
PBXGroup section
- 存放Group和group的children
- group的顺序不影响结果,默认是添加的时间顺序;children的items顺序决定xcode中显示的顺序
- 冲突:同一个group下添加文件,将冲突
PBXBuildFile section
- 存放可编译的文件 swift、storyboard、xcassets
- 冲突: 添加文件就冲突,解决办法是chose both,去重复
PBXFileReference section
- 所有文件 swift、storyboard、xcassets、app、plist
- 冲突: 添加文件就冲突,解决办法是chose both,去重复
PBXSourcesBuildPhase section
- swift 文件
- 冲突: 添加文件就冲突,解决办法是chose both,去重复
tips
- 实际文件夹与虚拟文件夹等同,不影响.pbxproj 文件结构
- 改变文件顺序,调整的是group中children的顺序
最后:避免.pbxproj 文件冲突的比较好的办法还是要经常更新develop