
XcodeGen两条命令生成完整 Xcode 工程不再手动合并 .xcodeproj【免费下载链接】XcodeGenA Swift command line tool for generating your Xcode project项目地址: https://gitcode.com/GitHub_Trending/xc/XcodeGenXcodeGen 是一个用 Swift 写的命令行工具。你只需在一份 YAML 文件写配置的文本格式里描述好 target 和构建设置它就自动产出 .xcodeproj 工程文件。工程文件从此可以放进 .gitignore合并冲突也跟着消失。你可能也这样卡过刚打开 Xcode 就弹出合并冲突两个人改了同一个 pbxproj工程文件里的真正配置最后只能一行行手工拆。更隐蔽的是无声的那种切完分支发现新文件没进 target或者别人本地改过的设置悄悄丢了直到 CI 报错才发现自己一直开着假工程。XcodeGen 把这类工程当成一次性产物真正的源头是你提交进 git 的 YAML。它能帮你做到的事 用 YAML 生成 .xcodeproj并将其加入 .gitignore自动扫描源码目录不再手动拖文件进 target多 target 共享一份构建设置区分 Debug 与 Release在 CI 上直接跑一条命令重建干净工程这些都不需要你去 Xcode 菜单里翻来翻去。两条命令生成工程安装二选一第一条更快第二条需要本机有 Swift 环境来编译brew install xcodegen git clone https://gitcode.com/GitHub_Trending/xc/XcodeGen cd XcodeGen make installclone 的方式是编译源码自己装Homebrew 则直接装现成的二进制。在项目根目录写一个最小的 project.yml只有名字和 target 也能跑name: MyApp targets: App: type: application platform: iOS同目录执行xcodegen generateMyApp.xcodeproj当场产出。sources 里写的目录会被自动扫描并分组你磁盘上的目录结构在 Xcode 里原样呈现不用逐个拖文件。之后改设置改完 YAML 重新生成即可Xcode 不会替你留旧值。三行配置玩出花样 ⚙️场景一多个 target 复用同一份设置。定义一个设置组target 按名字引用settingGroups: signing: DEVELOPMENT_TEAM: XXXX换团队只改一处所有引用的 target 一起生效。场景二让工程跟着分支走。往 git 钩子里放一行命令checkout 或 merge 后自动重新生成xcodegen generate --use-cache--use-cache在没变化时直接跳过本地快CI 也不白跑。做蓝牙项目时CoreBluetooth 这类系统框架依赖直接写进 target 的 dependencies 里用 sdk 类型链接即可重新生成时配置跟着工程走而不是留在你脑子里。我踩过的坑切分支后新文件不在 target 里→ 工程还是旧分支生成的那份 → 切换后重新生成或挂到 post-checkout 钩子里。Swift Package 链接不上→ 工程定义了 Debug/Release 之外的配置SPM 的已知限制→ 只保留标准两个配置环境差异写进 xcconfig。Carthage 找不到框架→ 框架还没构建Build 目录里没有 .version 文件 → 先 bootstrap再跑 xcodegen。再往下读想深入的话直接看仓库里现成的文档不用翻 issue完整规格字段Docs/ProjectSpec.md构建设置与依赖集成Docs/Usage.mdgit 钩子与 CI 实践Docs/FAQ.md今天就动手工程文件是用来生成的不是用来编辑的这是少吵架的起点。clone 下来跑第一条命令第一个 .xcodeproj 离你只有 10 秒钟。【免费下载链接】XcodeGenA Swift command line tool for generating your Xcode project项目地址: https://gitcode.com/GitHub_Trending/xc/XcodeGen创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考