如果是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。