本地与远端私有库
1.创建远端私有库
因为是私有库,so,有钱选择github,没钱选码云。
个人穷人一枚,选择码云来示例
创建项目
2.clone到本地建立本地私有库
pod repo add MySpec https://gitee.com/zbfdemo/MySpec.git
clone到本地
在本地文件夹查看
终端查看
创建封装组件的私有库并发布到远端
1.快速创建模板
- cd /Users/devil/Desktop/Test/Lib
-
pod lib create MostDefine
image.png
2.把要封装组件替换到模板
image.png
执行完第1步的b操作之后会自动打开模板,文件替换好之后,cd podfile上层路径,执行pod install,即可安装
3.码云创建存放封装组件的仓库
image.png
注意: 名称要与创建的模板名称一致
4.根据码云的提示将封装组件上传到码云
image.png
上传模板
cd /Users/devil/Desktop/Test/Lib/MostDefine //cd[模板路径]
git remote add origin https://gitee.com/zbfdemo/MostDefine.git
git push -u origin master
编辑podspec文件
podspec
podspec完成之后,执行下列语句,上传封装组件代码
git add .
git commit -m '所做的更改'
git push origin master
添加标签
git tag '0.1.0'
git push --tags
验证本地和远程,提交到私有库
本地验证
cd /Users/devil/Desktop/Test/Lib/MostDefine //cd[模板路径]
pod lib lint --allow-warnings
验证通过
验证不通过
远端验证
#允许警告
pod spec lint --allow-warnings
状态同本地验证相同
本地和远端都验证通过之后就可以提交了
pod repo push 【私有库名称】【封装组件】
e.g. pod repo push MySpec MostDefine.podspec
提交成功之后远端和本地展示
码云
本地
私有库的使用
//Podfile中必须添加你自己远端的私有库地址
source 'https://gitee.com/zbfdemo/DLPersonalSpec.git'
踩坑的地方
当你的封装组件依赖其他库时,pod lib lint --allow-warnings 失败
验证出错
暂时找到两个解决方案:
- . #import “”放入.m文件中
- . podspec文件中添加依赖库 s.dependency 'AFNetworking' s.dependency 'YYModel'
当你引用其他三方库时,有“xxxx.h” not found
解决方案
podfile中添加其他三方库spec源
source 'https://github.com/Cocoapods/Specs.git'
当你上传了新版本的组件后发现pod下来代码没有改变
一般是上传的顺序搞反了,必须先上传更改代码,后面再打tag,顺序搞反就会遇到和我一样的错误