Heim > Fragen und Antworten > Hauptteil
如果是php、rails项目,用git merge后解决每个文件的冲突就好了。
如果git merge cocoa项目,工程文件经常会有冲突。而且一冲突就一大堆。怎么破?不会要为每个项目成员开一个工程文件吧,有木有科学点的解决方案
PHP中文网2017-04-22 09:02:14
大多数我们遇到的.pbxproj工程文件冲突就是几个人都同时往项目里添加了文件,这是个XML文件,所以基本上只要把各方对这个文件做的修改都加在一起就行。可以让git做这件事,在 .gitattributes 文件里面加一行:
*.pbxproj text -crlf -diff -merge=union
这样可以应付绝大多数情况,除非是有人删了一个文件,有人又加了一个同名文件,或者大家同时修改了一些编译选项,但这种情况应该通过制度来避免。
另外,据说Google有的iOS开发小组是不提交.pbxproj文件,而是自己定义了一个文件格式用来记录文件列表,然后用一个内部的脚本生成.pbxproj。