在Xcode中,避免项目文件中Git冲突的最好方法是什么?(我使用的是手动git,没有使用git的Xcode接口)
我已经从Github克隆了mapbox-ios-sdk,并破解了它,现在远程主机已经改变了。当我尝试将远程更改拉到本地时,合并后项目文件中会有合并冲突。(具体来说,我指的是.xcodeproj中的project.pbxproj )
我真的不认为项目文件应该放在忽略中,因为如果有任何新的文件项目文件,.pbxproj文件似乎被改变了。(或者我完全错了,这个文件应该被忽略?但很明显,在mapbox-ios-sdk中,它并没有被忽略。毕竟,人们需要项目文件。)但我之前在与另一位合作者的协作项目中也遇到过这种冲突,这让我无法完全使用Git。
我应该弄清楚如何手动解决冲突,还是有更好的方法来处理这个问题?
发布于 2016-05-20 16:21:47
许多网站简单地建议使用.gitattributes文件:
*.pbxproj merge=union
在尝试使用脚本之前,我们将尝试这种方法。如果我们发现任何问题,我一定会更新这篇文章。另外,如果其他人对此方法有任何意见,请包括在内。
发布于 2015-08-13 10:44:50
在大多数情况下,你可以通过以下代码来修复合并,删除git添加的行:
#!/bin/bash
FILE={PRODUCT_NAME}.xcodeproj/project.pbxproj
sed '/======/d' $FILE | sed '/<<<<</d' | sed '/>>>>>/d' > temp
cat temp > $FILE
rm temp
但是,如果您重命名项目的组并导致冲突,您将手动删除原始组中的多余行。
发布于 2019-04-04 07:11:32
我制作了一个应用程序,用于在Xcode项目文件中修复此类错误。不幸的是,你仍然需要先做一些手动的合并。https://itunes.apple.com/us/app/xsaviour/id1449886415?mt=12
https://stackoverflow.com/questions/12907605
复制相似问题