iOS组件化1 之 创建远程私有仓库
2019-04-30 本文已影响0人
csii993
一、创建私有索引库
二、本地添加私有索引库
三、创建组件库
四、上传组件代码
五、提交podspec到私有索引库
一、创建私有索引库
我们用码云作为私有库,创建一个名为:LGSpecs
的私有库
创建私有索引库.png
二、本地添加私有索引库
1、查看本地索引库
pod repo
查看本地索引库.png
2、添加私有索引库
将我们刚刚新建的私有索引库LGSpecs
添加到本地
// pod repo add 索引库名称 索引库地址
//xxx:为码云用户名
pod repo add LGSpecs https://gitee.com/xxx/LGSpecs.git
三、创建组件库
在码云上创建组件库LGBase
为例
创建基础组件库.png
1、快速创建模板库
找一个位置创建一个文件以LGBase为例
,进入文件夹执行如下命令
// pod lib create 组件名
pod lib create LXFBase
执行命令之后会让你配置一些信息,如图
配置信息.png2、添加组件内容
创建完成后会自动帮我们打开相应的Example
项目,LXFBase
目录中会出现如图文件,到基础组件相关的类拷贝到Classes
文件夹中,并且把ReplaceMe.m
文件删除
拷贝组件库类文件.png
3、安装与测试本地库
在Example
项目中的Podfile文件中可以看到
pod 'LGBase', :path => '../'
终端进入Example
文件夹,执行如下命令
pod install
安装成功后,并测试
4、修改Spec
打开项目的LGBase.podspec
文件,配置下面的信息
s.name = 'LXFBase' #组件库名称
s.version = '0.1.0' #组件库版本
s.summary = 'LXFBase.'
s.description = <<-DESC
LXFBase是基础组件库,包括分类和常用工具
DESC #组件库描述
s.homepage = 'https://gitee.com/LinXunFeng/LXFBase'#组件库地址
s.source = { :git => 'https://gitee.com/LinXunFeng/LXFBase.git', :tag =>
s.version.to_s }#组件库git地址
s.source_files = 'LXFBase/Classes/**/*'
s.dependency 'AFNetworking', '~> 2.3'#配置组件库的依赖库
四、上传组件代码
1、将代码提交到组件仓库
进入LGBase
文件夹
git add .
git commit -m 'firstCommit'
git remote add origin https://gitee.com/xxx/LGBase.git
// 第一次push如果报错的话可以加上-f
// git push -f origin master
git push origin master
2、打标签
标签0.1.0
与spec中的s.version
保持一致
git tag '0.1.0'
git push --tags
五、提交podspec到私有索引库
在上传spec文件前我们可以做一个验证
来节省时间
1、本地验证Spec的必选字段
// 本地验证不会验证 s.source 中的tag
pod lib lint --private
成功提示:LGBase passed validation.
2、远程验证
// 远程验证会验证 s.source 中的tag,如果此时没有打上相应的标签则会报错
pod spec lint --private
如果你刚才没有打标签并上传至远程私有库就来进行远程验证,肯定是会报错的
成功提示:LSBase.podspec passed validation.
3、提交podspec
// pod repo push 私有索引库名称 spec名称.podspec
pod repo push LGSpecs LGBase.podspec