在 Git - Xcode iOS 上与 project.pbxproj 合并冲突

Merge conflicts with project.pbxproj on Git - Xcode iOS

虽然我已经在这里阅读过类似的评论,但在这个论坛中,我还没有找到一种可能适合无缝团队合作的方法。

如果您明白我的意思,您可能已经发现使用 git 和 Xcode 中的 project.pbxproj 文件很棘手,即使您在不同的文件中工作也是如此。

说,

不同的路径...但是你知道,冲突!正如您可能还注意到的那样,将 project.pbxproj 排除在外并不是一种选择。

所以我的问题是:您如何以专业的方式处理此问题,Git 流程准备就绪且最简单的方法。

非常感谢大家

PS:如果重要的话,我目前正在使用 Bitbucket 和 SourceTree。

PS2:如果可能的话,我想避免命令行和手动文件编辑。

创建一个 .gitattributes 文件并添加以下行:

*.pbxproj merge=union

合并将自动进行,您无需进行任何操作。

或者,您可以尝试 mergepbx,它会进行更智能的合并。

  1. 新文件仅由 "main-develop" 分支上的一名开发人员创建。
  2. 将新文件推送到 "main-develop"
  3. 这些文件是其他开发者拉取后实现的

我是 Kintsugi 的主要作者,该工具可以智能地合并冲突并承诺自动解决 project.pbxproj 文件中发生的 99.9% 的冲突。

自述文件还包含有关如何将其设置为 Git 合并驱动程序的说明,因此只要 *.pbxproj 文件中发生冲突,就会自动应用它。我不知道 Sourcetree 有什么方法可以做到这一点,但是对于大多数设置后的冲突,您不必再次触摸命令行。