我还没有找到这个问题的答案在Podfile文档内,所以我不知道这是否是可能的.
我想安装一个有3个依赖项的CocoaPods项目.我将它添加到我的Podfile:
pod 'IDMPhotoBrowser'
并运行安装:
$ pod install
Installing DACircularProgress (2.1.0)
…
Installing IDMPhotoBrowser (1.2)
…
Installing SVProgressHUD (0.9)
Run Code Online (Sandbox Code Playgroud)
但是,我的项目中有一个hack up版本的SVProgressHUD,其中包含不在当前仓库中的代码.此外,SVProgressHUD 0.9是从1月开始的,此后还有几个月的额外提交.我想用我手动添加的版本代替.
我可以在我的Podfile指定SVProgressHUD应该没有被安装,以便使用我手动添加的版本?或者我每次跑步时都需要手动删除它pod install?
我知道我可以将我的fork上传到github并执行以下操作:
pod 'SVProgressHUD', :git => '<my git repo>', :commit => '<my sha>'
Run Code Online (Sandbox Code Playgroud)
但我希望不只是需要上传的代码来获取的CocoaPods做我想做的.
阻止依赖关系并不是因为它依赖于你自己的依赖.这意味着CocoaPods需要SVProgressHUD在激活之前找到您的本地副本,IDMPhotoBrowser并SVProgressHUD在主规格仓库中查找.
您可以SVProgressHUD使用本地podspec在Podfile中声明您的第一个版本来实现所需的设置:
External/SVProgressHUD/SVProgressHUD.podspec.像这样更新您的Podfile:
pod 'SVProgressHUD', :path => 'External/SVProgressHUD' # this needs to be declared first
pod 'IDMPhotoBrowser' # your custom pod will be used as the dependency here
Run Code Online (Sandbox Code Playgroud)如果您没有本地podspec,你应该能够采取的0.9版本的拷贝SVProgressHUD(并根据需要修改它来编译您添加任何新的代码).
| 归档时间: |
|
| 查看次数: |
1485 次 |
| 最近记录: |