创建podspec 我参考的是这两个大哥的文章:
3分钟让你的框架支持cocoapods,podspec文件讲解
创建podspec
首先使用终端cd到你项目的目录执行:
pod spec create YourDemo
然后该文件夹下就会有一个 YourDemo.podspec 的文件,打开它
把"#"号对应的注释全部删掉~
加加改改留下这部分:
Pod::Spec.new do |s|
s.name = "ERHandPainting"
s.version = "1.0.0"
s.summary = "You Can drawn on UIImageView"
s.homepage = "https://github.com/ErHu1993/ERHandPainting"
s.license= { :type => "MIT", :file => "LICENSE" }
s.author = { "huguangyu" => "199301055@qq.com" }
s.source = { :git => "https://github.com/ErHu1993/ERHandPainting.git", :tag => "1.0.0" }
s.source_files = "ERHandPainting/HandPainting/*"
s.ios.deployment_target = "7.0"
end
注释:
- s.version 对应sourceTree上的branch(分支),如果没有创建一个,代码提交上去.
- LICENSE 文件找个pod库里面都有,我是直接复制进去的,和.podspec一个文件夹就行
- s.source_files 文件路径会从.podspec下开始找, /* 代表该文件夹下的所有文件
- 几处填写版本号的地方一定要和工程/仓库保持一致
其次的添加Tag:(.podspec文件路径下命令行)
git Tag 1.0.0
提交Tag:
git push --tags
提交完成之后验证.podspec
pod spec lint ERHandPainting.podspec
验证成功最后把 .podspec 文件推送到 Cocoapods 官方库
pod trunk push ERHandPainting.podspec
成功后就可以pod search YourDemo 啦~
如果发现搜索不到,请看文章最后
更新库的时候要注意的地方(我用的是SourceTree)
- 更新必须要创建一个分支,代码提交到GitHub里面;
- 先查看有没有tag(先cd到podspec文件目录下)
git tag
如果有:
删除本地tag(对应tag的版本号,挨个删除所有)
git tag -d 1.0.0
删除远程tag(对应刚刚的tag版本号,挨个删除所有)
git push origin -d tag 1.0.0
然后打上新的tag
git tag 1.0.1
将新tag推送到远程仓库
git push --tags
- 验证podspec
pod spec lint YourDemo.podspec
- 成功后提交:
pod trunk push YourDemo.podspec
成功后就可以 pod search YourDemo 了 ~
如果搜索不到请执行下面的操作~
pod setup
去这里删除 search_index.json 文件
~/资源库/Caches/CocoaPods/
然后在 pod search YourDemo 就有了~