多个私人回购cocoapods

时间:2014-08-24 09:44:38

标签: objective-c xcode git dependency-management cocoapods

我有一个私人回购让我们说'A'有一些公共pod依赖,如AFNetworking等等。我为这个'A'创建了一个pod规范文件,并在另一个库项目'B'中使用它,一切正常,库项目编译完成。

现在我也想在我的项目中使用'B'(也是私人仓库)我为'B'创建了pod规范文件,并在其中包含了唯一的依赖项'A'。与Pod文件相同,包括'A'作为依赖,如

pod 'A', :git => 'https://github.com/privateRepo/A.git', :tag => 'v1.0.0'

和podspec文件一样

s.dependency     'A', :git => 'https://github.com/privateRepo/A.git', :tag => 'v1.0.0'

当我执行 pod spec lint。时,我

 -> B.podspec
- ERROR | [spec] The specification defined in `B.podspec` could not be loaded.


[!] Invalid `B.podspec` file: [!] Unsupported version requirements. Updating CocoaPods might fix the issue.
#  from B.podspec:18
 #  -------------------------------------------
 #  # Dependencies
 >    s.dependency     'A', :git => 'https://github.com/privateRepo/A.git', :tag => 'v1.0.0'
 #  
 #  -------------------------------------------

来自 pods --version 我的cocoapod版本 0.33.1

来自this post我认为在cocoapods中无法做到这一点。有人可以帮忙! 感谢

1 个答案:

答案 0 :(得分:4)

Cocoapods不支持git repo的依赖,你必须推送A'到你的Private Spec Repo,并在你的B.podspec中设置依赖:

s.dependency 'A', "~> 1.0"

然后lint与--sources

pod spec lint B.podspec --sources=PrivateSpecRepoNameOrGitURL,master