想将自己的制作的库开源出来,现在自然而然的就会想导入pod,网上很多教程,本人就根据很多教程亲自操作了一下,从而想到写下来,已做备用参考。通过trunk的方式。
1、注册trunk
pod trunk register helong_lh@163.com 'hlhelong' --verbose
提示:用户名选择github的用户名,邮箱最好也是
2、查看注册信息
pod trunk me
- Name: hlhelong
- Email: helong_lh@163.com
- Since: January 21st, 19:35
- Pods:
- HLScanView
- Sessions:
- January 21st, 19:35 - June 14th, 20:20. IP: 106.113.27.200
输出以上信息表示注册成功
3、创建.podspec文件
注意:库文件和LICENSE,README.md,.podspec都在同一个目录下面,LICENSE,README.md这里必须有
创建:
pod spec create HLScanView
编辑:
//特别说明,里面的注释是博主为了大家知道什么意思加的,实际使用时一定要去掉
Pod::Spec.new do |s|
//文件名
s.name = 'HLScanView'
//版本
s.version = '1.0.1'
//描述信息
s.summary = 'A scan.'
//这里的主页自己随便写
s.homepage = 'https://www.longhe.xin'
//作者
s.authors = { 'helonglh' => 'helong_lh@163.com' }
//资源路径
s.source = { :git => 'https://github.com/hlhelong/DemoHLScanView.git', :tag => '1.0.1' }
//ARC模式
s.requires_arc = true
//license,一般我们用MIT
s.license = 'MIT'
//允许的最低系统使用版本
s.ios.deployment_target = '7.0'
//库文件路径
s.source_files = 'HLScanView/*'
#s.resources = "HLScanView/*.png"
//如果有多个,后面加逗号隔开如: 'UIKit', 'XXXXXX'
#s.framework = 'UIKit'
#s.requires_arc = true
#s.dependency 'SDWebImage'
end
提示:这是从其他博客文章摘录下来做的修改,实际上.podspec最好用xcode打开修改最好了,单引,双引无所谓。//的注释没用,请删掉,里面正确注释应该是#打头的。上例中带#的注释是当有第三方库和其他资源文件时的写法。s.source里面的git为DemoHLScanView在github所创建的库的clone with https的URL。
验证编辑:
pod lib lint HLScanView.podspec
-> HLScanView (1.0.1)
HLScanView passed validation
如上提示,即为成功
4、打tag
首先提交push一下整体
git add -A
git commit -m "first commit for version 1.0.0"
git push origin master
然后打tag,并push,重点提示:此处的tag必须和.podspec处的tag一毛一样
git tag '1.0.1'
git push origin --tags
//tag打错了并已提交的
git tag -d '1.0.1' //删除本地tag
git push origin --delete tag '1.0.1' //删除远程tag,然后重新打tag
成功后
To git@github.com:hlhelong/DemoHLScanView.git
* [new tag] 1.0.1 -> 1.0.1
将.podspec文件提交到github库仓库
pod trunk push HLScanView.podspec
//如果有警告 可在后面加 --allow-warnings
成功后如图
5、快乐的搜索自己的库
pod search HLScanView
提示:若不能及时搜索到,pod setup一下(万恶的更新,慢的要睡着),更新本地的pod依赖库
6、后记
因为几乎是一次成功的,没有踩多少坑,只是在编辑.podspec文件的时候有些许不合格,只要按照提示修改就好。其他的按照我这个步骤应该是没问题的。菜鸟所写,如有质疑请积极留言讨论。
后期:假如后期想修改.podspec文件,里面的tag必须改变,再次trunk push的话才能成功。
7、参考