【问题标题】:iOS Practice for using cocoapod and source controliOS 使用 cocoapod 和源码控制的练习
【发布时间】:2017-05-16 04:21:44
【问题描述】:

目前,在我们公司,我们只是将所有 pod(如 AFNetworking、Realm 等)提交到 svn/git。其他开发者在安装 pod、更新 pod 时,时不时会发生冲突。

我们也使用它来避免接触其他 pod。

pod install --no-repo-update

我能否知道使用第三方 pod 的最佳做法是什么?我需要提交这些 pod 吗?

或者只是在我们的代码签出后再次进行 pod install ?我只是想避免使用 pod 的代码冲突。

【问题讨论】:

    标签: ios cocoapods


    【解决方案1】:

    可以参考http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control

    无论您是否签入,Pods 目录、Podfile 和 Podfile.lock 都应始终处于版本控制之下。建议将其置于版本控制之下,不要将其添加到您的 .gitignore

    【讨论】:

    • 谢谢。我将首先通读该指南。看完后可能需要总结一下。
    【解决方案2】:

    Khant 通常将依赖项上传到存储库不是一个好习惯,主要是因为您将节省空间和时间。可以推送您的 Podfile,但您的依赖项的所有代码都应省略并为每个开发人员在本地安装。每次添加或更新新的依赖项时,您只需要运行pod update 命令。要做到这一点,您可以在 Pods/ 的新行上添加到您的 .gitignore 文件中。 无论哪种方式,如果您正在开发大型应用程序,您应该快速使用 swift 您应该遵循最佳实践并使用正确的 .gitignore 设置,例如example,如果您想知道避免 Cocoapods 依赖的一些利弊,您可以查看这个official documentation

    【讨论】:

      【解决方案3】:

      我们也遇到了同样的问题。作为一种解决方案,在提交时,我们只编写带有所需 pod 列表的 pod 文件。每当其他人进行更新时,他的 podfile 都会更新,然后从控制台更新他的项目 pod。

      因为 pod 对所有人都是一样的,所以你不需要提交 pod。对于更具体的,你可以给 pod 提供版本。

      【讨论】:

      • 谢谢。我会注意的。
      【解决方案4】:

      在我看来,我们不会将所有 pod 推送到 svn 或 git。您只能提交 Podfile,并且可能希望冻结到特定版本的 Pod,在这种情况下,您可以指定该版本号。

      pod '异议', '0.9'

      而当其他成员安装 pod 时,也是一样的。

      【讨论】:

      • 谢谢。我会记下具体的版本。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-11
      • 1970-01-01
      • 2011-05-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-27
      相关资源
      最近更新 更多