Cocoapods:强制下载最新版本

Cocoapods: force latest version download

我在项目中使用的库的 podspec 非常过时。结果,我的项目似乎正在引入旧文件。有问题的图书馆是 Classy:https://github.com/ClassyKit/Classy

提到版本 0.2.4 的 podspec 自 2014 年以来就没有更新过。但是,实际版本在 podspec 更新后有一些必要的修复(例如 https://github.com/ClassyKit/Classy/pull/97/commits)。与其手动移动,我更愿意让 cocoapods 处理它以确保文件同步。问题是每当我 运行 "pod update" 它声称回购是最新的。

简单的解决方案

您可以自动针对特定分支的最新提交:

pod 'Classy', git: 'https://github.com/cloudkite/Classy.git', branch: 'master'

您可以使用 head 说明符自动定位最新提交(归功于 Stalin Kay):

pod 'Classy', git: 'https://github.com/cloudkite/Classy.git', commit: 'HEAD'

您可以手动定位今天的最新提交,以便冻结您对特定提交的集成:

pod 'Classy', git: 'https://github.com/cloudkite/Classy.git', commit: 'c319908f8bded62e268dfd48ee5d65329b819129'

克隆替代品

您可以克隆存储库,更新 .podspec(只需删除对标记的引用并将版本设置为“0.0.1”),然后在 Podfile 中定位您自己的存储库:

pod 'Classy', git: 'https://github.com/atsepkov/Classy.git'

或同样的事情并定位你自己的 .podspec:

pod 'Classy', podspec: 'https://github.com/atsepkov/Classy/blob/master/JSONKit.podspec'

举个例子,这正是我在这里所做的:https://github.com/Coeur/Classy/blob/master/Classy.podspec

您还可以创建自己的 .podspec 文件源,并添加它的源:

source 'https://github.com/atsepkov/Specs.git'
pod 'Classy'

或者您可以使用新名称将您的 .podspec 推送到 CocoaPods 主干:

pod trunk push ClassyByAlexanderTsepkov.podspec

旧 CocoaPods

如果您使用的是 CocoaPods 0.39.0(但它不再适用于 1.0.0+),您可以直接使用 head 命令:

pod 'Classy', :head

什么行不通

如果您直接定位回购,您将使用该回购的最新 .podspec(但这对您的情况来说还不够):

pod 'Classy', git: 'https://github.com/cloudkite/Classy.git'

联系作者

最后,考虑联系 podspec 所有者 https://twitter.com/cloudkite