iOS组件化开发之发布私有库
对于需要切换源码和二进制库的库,需要同时发布源码和二进制库,此文介绍详细流程。
一、增加版本号
修改 podspec
中s.version
到对应版本号。规则:
- 修复问题:0.0.x
- 小功能修改:0.x.0
- 革命性改动:x.0.0
二、打 tag,并推送到源码仓库
pod的打包和发布命令,都是验证远程仓库代码,所以必须打出和s.version
对应的 tag
。
命令如下:
git tag x.x.x
git push --tags
三、打包二进制库推送到baniry仓库
每个私有库在此组有单独的 project,用于存放二进制文件
因为我们希望把所有私有库做成可以二进制和源码切换,并源码保密,所以我们在每次发布时需要打包成二进制并放至远程仓库
IS_SOURCE_CODE=1 pod package xxx.podspec
得到 对应版本的 .framework
,copy 至对应二进制仓库,提交并打出 tag,然后推送到远程。
二进制库版本号与源码库版本号必须一一对应
四、发布podspec
使用如下命令发布:
pod repo push --allow-warnings --verbose your_spec xxx.podspec
pod 会验证我们的仓库,因为我们默认使用二进制库,所以此时 pod 会去拉我们刚刚上传的二进制仓库。而我们打包时使用IS_SOURCE_CODE=1
切换为源码打包。至此两个版本的库都经过了验证,保证了可用性。
其中your_spec
是在添加私有仓库时设置的名称。
添加私有仓库:
pod repo add your_spec 私有库地址