注册trunk
pod trunk register 邮箱 '用户名' --verbose
注意:QQ邮箱可能收不到邮件,换了两个QQ邮箱,最终用了163邮箱。
去邮箱中打开邮件,点击链接,即注册成功
pod trunk me
// 查看注册信息,也可以查看自己发布的Pods
在GitHub
创建工程,这里以DDBaseModule
为例,创建一个基础库,添加一些常用的宏和分类。
在你想要放的位置创建一个和组件同名的文件夹,比如DDBaseModule
,然后使用下面命令:
cd DDBaseModule的路径
pod lib create DDBaseModule
然后根据情况,配置信息:
创建完成后会自动打开Example
项目,然后将库文件的相关代码文件拖到Class
中替换ReplaceMe.m
文件。
在Podfile
文件中:
pod 'DDBaseModule', :path => '../'
模板库已经在Podfile
中指定了DDBaseModule.podspec
的位置,使组件DDBaseModule
可以正常安装使用和测试。
然后,cd
到Example
路径下,执行下面命令:
pod install
此时,我们已经将本地的组件添加到Example
中了,接下来可以进行单元测试,确保组件的正常使用。
Specs
文件Specs
文件, s.name = 'DDBaseModule'
s.version = '0.1.0'
s.summary = 'DDBaseModule.'
s.description = <<-DESC
DDBaseModule是基础组件库,包括分类和常用工具
DESC
s.homepage = 'https://github.com/DongliangZhao/DDBaseModule'
s.source = { :git => 'https://github.com/DongliangZhao/DDBaseModule.git', :tag => s.version.to_s }
s.source_files = 'LGMacroAndCategoryModule/Classes/**/*'
本地验证,添加--allow-warnings
忽略警告。
pod lib lint xxxx.podspec --allow-warnings
如果依赖了自己的库需要使用source的方式验证
远程验证
pod spec lint --sources='私有仓库repo地址,https://github.com/CocoaPods/Specs'
如果看到
xxxx passed validation.
就表示成功了
git add .
git commit -m '提交描述'
git remote add origin https://github.com/DongliangZhao/DDBaseModule.git
// 第一次push如果报错的话可以加上-f
// git push -f origin master
git push origin master
tag
标签0.1.0
与spec
中的s.version
保持一致
git tag '0.1.0'
git push --tags
打tag
, 发布一个release
版本,成功之后即可在releases
里面看到这个tag
的版本
pod trunk push xxxx.podspec --allow-warnings
这里补充一下,创建私有库时,这里并不是使用trunk
的方式提交,而是将podspec
添加到私有索引库Sepc repo中,命名如下:
pod repo push PodSpec名称 Demo.podspec
验证
搜索
pod search DDBaseModule
如果搜索不到,则执行下面命令:
rm ~/Library/Caches/CocoaPods/search_index.json
删除后,再search
,出现下面的
Creating search index for spec repo 'master'..
稍等就会搜索到。
使用
pod 'DDBaseModule'
维护
如有错误或版本迭代,修改工程文件后推送到远端仓库后:
podspec
中的版本号tag
上传我们还可以创建一个演示demo
工程来展示查看,并不会影响我们的pod
库。