XcodeGen –一种管理Xcode项目的更好方法


问题

  • .xcodeproj文件很烂
  • 它们不是人类可读的
  • 当合并冲突确实发生时,这使得它们几乎无法解决

当前的“解决方案”

将此行添加到您的.gitAttributes

  * .pbxproj merge = union 

此属性告诉git,只要与任何.pbxproj文件存在合并冲突,然后就会自动 合并同时使用双方

十分之九的时间可以正常工作。 但是,如果事情没那么顺利,事情就会迅速走向现实。

根据项目的大小,您最终可能会遇到数百个看似无法解决的冲突,这些冲突中的代码块最终会出现在不应该出现的地方。 如果您曾经经历过这种情况,您就会知道它很快就会成为一场噩梦

欢迎使用XcodeGen

在寻找解决方案之后,我遇到了XcodeGen。

yonaskolb / XcodeGen

XcodeGen –命令行工具,可从规范文件和文件夹结构生成Xcode项目

github.com

XcodeGen是一个命令行工具,它使用文件夹结构和简单的项目规范来生成Xcode项目。

使用XcodeGen,您可以创建项目规范 ,该规范可以采用JSONYML格式 。 这些规范包含生成项目的所有信息。 目标,方案,设置,依赖关系。 您命名,它已被覆盖。

基本的应用规范仅需几行即可声明:

创建规范后,您只需运行:

  xcodegen 

项目即刻生成!

ProjectSpec非常详尽,涉及设置和配置方面的几乎所有情况。

我建议任何团队尝试XcodeGen,好像通过从Xcode复制现有设置来创建规格的初始设置似乎很麻烦。 将来节省的时间和麻烦是不值得的。

谢谢阅读!