使用特定分支时如何满足cocoapod外部依赖

How to satisfy cocoapod external dependancy when using specific branch

在我的项目中,我同时使用了 Swinject 和 SwinjectAutoregistration pods。两者通常都声明为“2.0.0”版本,如下所示: pod 'Swinject', '2.0.0' pod 'SwinjectAutoregistration', '2.0.0'

但是为了在 Xcode 9 的测试版中构建我的项目,我需要使用 Swinject github 存储库的特定分支,as stated here。新声明如下所示:

pod 'Swinject', :git => 'https://github.com/Swinject/Swinject.git', :branch => 'swift4'

当我尝试 pod update 时出现依赖项错误。我相信 SwinjectAutoregistration 声明了对 Swinject 2.0 的依赖,所以我对同一个 pod 有不同的来源。

有没有办法告诉 cocoapods 这个 pods 的具体来源与 2.0 版本一样

好吧,似乎将源指定为 github 存储库而不是这个特定 pod 的 cocoapod 存储库。

我在 target 'MyGreatApp' do 行之前添加了这一行:

source 'https://github.com/Swinject/Swinject.git'

我必须说明这适用于这个特定的 pod,但可能不适用于其他情况。 Swinject 背后的优秀人员修复了 Xcode (9, beta) 分支上的 github 仓库中不在 cocoapod 仓库中的错误。

所以这个答案适用于这种情况,但不幸的是,这可能不像我希望的那样通用。