4

在我当前的项目中,我被要求不要提交我的Pods目录,同时,人们希望我向 XCode 构建阶段“添加一些脚本”,如果需要,它将在每次安装之前自动运行“pod install”。

克隆存储库后,目标不是在终端中手动运行。pod install

我花了一天的时间试图解决这个问题,但我发现了一些没有太多细节的参考资料:

iOS 使用 pod install 作为 Pre-action 运行脚本来构建项目

CocoaPods 版本控制,克隆 repo 时必须使用 pod install

我还发现对于 CI,通过在 .yml 文件中设置操作可以解决相同的问题:

Travis-CI 无法打开文件

你知道这种脚本会是什么样子吗?

4

1 回答 1

6

如果这可以分成两个不同的问题,也许最好。

但是现在我们已经在这里了,为了避免存储库中的 pods 目录,请将此行添加到您的.gitignore文件中:

Pods/

关于运行pod install的第二个问题。在 Xcode 上:

  • 单击左上角的方案图标,然后选择“编辑方案...”
    • 或者从菜单中选择“产品 -> 方案 -> 编辑方案...”
  • 在方案窗口中展开“构建”
  • 选择“预操作”
  • 单击 + 并选择“新建运行脚本操作”
  • 选择以提供来自您的目标的构建设置
  • 添加脚本:

    cd ${PROJECT_DIR}
    
    test -e Pods || pod install && sleep 30
    

在此处输入图像描述

脚本说明:

  • 将目录更改为项目的主文件夹
  • 检查是否有名为 Pods 的文件或文件夹,如果没有,则运行 pod install 并等待 30 秒(在继续构建之前)。您可能需要根据需要等待 pod 下载的时间来调整或多或少地等待。
于 2019-02-08T12:50:03.060 回答