2014-04-07 36 views
2

所以在看this article后,它似乎使用私人椰子树模块化大型应用程序是可行的。但我遇到了一个问题:如何在多个开发人员之间使用/创建私有cocoapods?直接使用git源作为吊舱,像这样:组织一个大型项目与多个私人椰子树

目前,我用的是最简单的解决方案

pod 'HBToolkit', :git => 'ssh://private-domain.com/ios/hbtoolkit.git' 
pod 'HBBussiness', :git => 'ssh://private-domain.com/ios/hbbussiness.git' 
pod 'HBAPI', :git => 'ssh://private-domain.com/ios/hbpapi.git' 

它真的很方便,但不好的一点是它不能处理的依赖。所以假设moduleA依赖于moduleB和moduleC,在XXX.podspec中没有办法标识它们,因为cocoapods不支持带有直接git源代码的专用pod。

为了解决依赖性,我必须遵循steps provided by the site,这有点复杂。

所以如何实现等提供文章的影响:

platform :ios, '6.0' 

# networking, slider navigation, routing 
pod 'AFNetworking', '~> 1.2.1' 
pod 'ViewDeck', '~> 2.2.11' 
pod 'JLRoutes', '~> 1.2' 

# sub-apps, pulling from the head of each repo for development. alternately, we can pin it to a release version like we do the other pods 
pod 'HSAPIClient', :head 
pod 'HSCommonResources', :head 
pod 'HSMarketingGraderApp', :head 
pod 'HSContactsApp', :head 
pod 'HSDashboardApp', :head 
pod 'HSLoginApp', :head 
pod 'HSSocialApp', :head 
pod 'HSSourcesApp', :head 
pod 'HSSettingsApp', :head 
pod 'HSSocialReach', :head 
pod 'HSEmailApp', :head 

PS:在多开发商高层,如果我想看到最终应用的结果,做我必须做的过程:

在moduleN
  1. 编辑源
  2. 提交和推送到服务器的git
  3. 运行pod update在最终应用程序看到的结果,如果有什么差错,红色过程?

回答

1

要在文章实现提到你必须:

  • 设置私人PodSpecs库(遵循的CocoaPods现场指导)

  • 一旦你有,你可以使用pod '<pod name>', :head

  • 显然你 不希望推动代码之前,确保它的作品,为此 目的

,你应该在podfile两行对每个吊舱例如:

#uncomment this line before pushing 
#pod 'HBToolkit' 
#use this line for local development(path to podspecs from your working copy of pod project) 
pod 'HBToolkit', :path => '../HBToolkit.podspec' 

你想HBToolkit的地方发展,而你在使用它的项目,你必须取消注释第二线安渡每次运行pod install。一旦你完成了。推HBToolkit更改。评论第二行,取消注释第一行并运行pod install。现在你有相同的变化,但现在从回购拉。