从前有个苦逼的iOS开发,天天写业务,一个版本接着一个版本。好不容易有2天时间闲一点,还不开始学习组件化?gan,说干就干!
一、准备工作
电脑配置好ruby和cocoapods环境;准备好Github账号
二、Github上操作
创建仓库、提交代码等操作就不赘述了。一堆教程一顿操作就可以。
复习下git命令行:
1、git add -A
2、git commit -m 'first commit'
3、git push origin
//给仓库加上tag
4、git tag 1.0.0
5、git push origin --tags
三、重点CocoaPods操作
github部分的工作算完成了,接下来要开始做cocoaPods部分的了:
创建一个podspec文件输入如下命令
pod spec create XXXXXX
注意:XXXXXX 起库名不要和现有的库名冲突
之后 我们的项目中就会多出来一个spec文件,这个文件就是配置我们这个仓库的所有相关信息。我们可以用文本编辑打开,编辑里面的内容,编辑完毕后,所有注释最好删除掉。
以下提供参考:
Pod::Spec.new do |spec|
spec.name = "DXClickAnimateBtnPod"
spec.version = "1.0.0"
spec.summary = "DXClickAnimateBtnPod is a button that presses the zooming animation effect"
spec.description = <<-DESC
DXClickAnimateBtnPod is a button that presses the zooming animation effect.Developer:wgz
DESC
spec.homepage = "https://github.com/wgziOS/DXClickAnimateButton"
spec.license = { :type => "MIT", :file => "LICENSE" }
spec.author = { "wgziOS" => "547256553@qq.com" }
spec.source = { :git => "https://github.com/wgziOS/DXClickAnimateButton.git", :tag => "#{spec.version}" }
#spec.frameworks = 'UIKit'
spec.source_files = "DXClickAnimateButton", "DXClickAnimateButton.{h,m}"
spec.platform = :ios, "9.0"
#spec.exclude_files = "Classes/Exclude"
end
然后验证一下spec文件是否有合格
pod spec lint DXClickAnimateBtnPod.podspec
注意: spec.platform = :ios, "9.0" 不能漏
否则验证的时候会报以下错:
ERROR | xcodebuild: Returned an unsuccessful exit code. You can use `--verbose` for more information.
接下来需要注册trunk账号
pod trunk register 邮箱 昵称 --description="描述
成功之后会有让你打开邮箱进行验证的提示,打开你的邮箱点击链接进行验证
注意:如果你是QQ邮箱,大概率会进垃圾邮件,最好用别的邮箱。
之后
pod trunk me
如图:
如果前面.podspec没有问题 ,检验合格之后,就可以提交了
pod trunk push
上传成功,你就可以通过上面的URL: [https://cocoapods.org/pods/DXClickAnimateBtnPod]进入的Pods查看自己的仓库信息了。
现在可以通过pod search搜索我们的库名了。
如果没搜到,更新一下本地的索引库即可。(或者 重新 pod setup)
如果还是不行,那只能等待了,这里挺神奇的,因为你不知道啥时候突然就可以搜索到了(我的这个库是第二天可以搜索到)。有了解的朋友可以在评论区讨论下pod search搜索的问题。
四、总结
podspec文件验证大概率都会出问题,这里需要细心排查下。
如果这篇文章对你有帮助,麻烦给个小星星:
https://github.com/wgziOS/DXClickAnimateButton