1. 把待公开的项目上传gitHub远程仓库。
- 此处项目代码提交git服务器过程略,详情参考文章Git Shell命令。
注:代码提交git成功后,打好我们的发布版本tag值,如:
0.0.1
2. 安装CocoaPods。
- CocoaPods安装步骤和使用请参考:CocoaPods安装及使用
3. 创建和编写.podspec
文件。
- 创建
.podspec
文件命令如下:$ pod spec create Name
注:
Name
为创建的.podspec
文件名字,一般取与工程文件相同的名字。
-
.podspec
编写创建的
Name.podspec
文件打开可看到一个默认的模版,我们可在默认模版基础上修改,也可参考gitHub
上一些优秀的第三方库的.podspec
文件,如:AFNetworking
库的AFNetworking.podspec
文件,直接复制内容然后按照自己的项目修改。
如本人公开的一个基于FMDB封装的数据库升级库FMDBUpgrade的FMDBUpgrade.podspec
文件内容如下:
Pod::Spec.new do |s|
s.name = "FMDBUpgrade"
s.version = "1.0.1"
s.summary = "Upgrade database extension class based on FMDB."
s.homepage = "https://github.com/yangyongzheng/FMDBUpgrade"
s.license = "MIT"
s.author = { "yangyongzheng" => "youngyongzheng@qq.com" }
s.source = { :git => "https://github.com/yangyongzheng/FMDBUpgrade.git", :tag => "#{s.version}" }
s.requires_arc = true
s.platform = :ios, "8.0"
s.source_files = "UpgradeManager/FMDBUpgradeHeader.h"
s.public_header_files = "UpgradeManager/FMDBUpgradeHeader.h"
s.subspec "UpgradeManager" do |ss|
ss.source_files = "UpgradeManager"
ss.public_header_files = "UpgradeManager/*+Upgrade.h"
end
s.dependency "FMDB"
end
指定的源码路径以.podsepc文件所在文件夹开始推算,具体路径以具体项目库源码路径为准。
4. podspec文件校验
校验分为本地校验和远程仓库校验,校验之前要先设置好版本相对应的tag值。
- 本地校验命令如下:
# 本地校验命令
$ pod lib lint
# 拼接了其他参数的本地校验命令
$ pod lib lint --allow-warnings --use-libraries --verbose
注:根据校验错误提示,自己按需求在
$ pod lib lint
后面拼接--allow-warnings
、--use-libraries
、—verbose
等选项。
- 具体使用可运行
$ pod lib lint --help
查看。
- 校验成功如下图所示:
DatabaseManager passed validation.
表示通过校验。其中有一个警告- WARN | url: There was a problem validating the URL http://twitter.com/yangyongzheng.
,因为校验时我允许有警告所以可校验通过(pod lib lint
命令默认是不允许有警告的)。
- 远程仓库源码校验
# 远程仓库校验
$ pod spec lint
# 允许有警告、使用静态库,打印校验日志命令
$ pod spec lint --allow-warnings --use-libraries --verbose
- 校验拼接选项根本地校验一样,按自己需求拼接在
$ pod spec lint
后面。
- 校验成功时如下图所示:
5. 提交到官方检索库
上面第4步.podspec文件校验成功后,就可提交到官方检索库了。
- 提交之前先注册提交账号,命令如下:
$ pod trunk register email@example.com 'Your Name' --description='Personal Laptop'
注册成功后,注册的邮箱会收到一份邮件,进入邮箱点击下邮件中的验证地址验证下就注册成功了,接下来就可以提交了...
- 注册成功后提交的命令如下:
# If `PATH` is not provided, defaults to the current directory.
$ pod trunk push [PATH]
# 拼接选项和第4步校验拼接的选项要一致
$ pod trunk push --allow-warnings --use-libraries --verbose
注意:
$ pod trunk push
后面拼接的选项要和第4步$ pod spec lint
校验拼接的选项一致。
6. 开始使用
上叙第5步提交成功后,就可以开始在项目中使用我们公开的库了。
- 首先我们需要更新本地索引库:
pod setup
setup完成后,执行
pod search FMDBUpgrade
。-
如果搜索不到结果,删除search_index.json文件
-
pod setup
成功后会生成~/Library/Caches/CocoaPods/search_index.json
文件。 - 终端输入
rm ~/Library/Caches/CocoaPods/search_index.json
删除检索文件。 - 删除成功后再执行
pod search FMDBUpgrade
就可以找到了。
-
在项目的Podfile文件中加上:
pod 'FMDBUpgrade'
,运行pod install --verbose --no-repo-update
,至此大功告成。
7.更新维护
更新代码后,更新tag和podspec描述文件中版本,重新走一遍步骤4、5、6即可使用啦。