Git子模块与Cocoapods

use*_*638 9 objective-c dependency-management git-submodules cocoapods

使用Cocoapods与Git子模块的优点/缺点是什么?我知道存在一些差异,但我想了解更多关于使用这两种系统的优缺点.谢谢!

Lea*_*ros 6

Git子模块不应用于依赖管理.我建议你使用Cocoapods.

Git子模块

优点

  • 基本上是一个启动它的内衬,不需要额外的文件/配置.

缺点

  • 您无法指定目标目录,您始终必须克隆整个存储库.
  • 存储库移动时,您必须手动更新它.
  • 您必须检查实际的依赖性.

的CocoaPods

优点

  • 只克隆您需要的目录.
  • 易于更新/维护.
  • 您不必检查整个依赖树,只需要检查PodfilePodfile.lock.每个维护者都可以获取自己的依赖项.

缺点

  • 取决于您的Spec存储库或主规范存储库中的Podfile.
  • 取决于外部工具.

您可以在这里阅读更多关于Cocoapods的信息.

  • 依赖性是pods最大的问题之一.使用pod来获得一个简单的功能通常会导致包含几个具有兆字节资源的pod.有时,只需采用您需要的功能并将其复制粘贴到您自己的代码中就更容易了. (4认同)