在 iOS 领域使用 Pod 来进行组件化开发时经常须要手动进行一系列的操做,来实现Pod 组件的更新目的。特别是一些业务关联性比较强的 Pod 组件,须要常常对其进行更新。随着组件的体积愈来愈大,每次更新的时候,执行 pod lib lint,等待了好几分钟以后, podspec 文件检查经过了,须要再进行打 tag 操做,而后再执行 pod repo push 操做,而后再等好几分钟,才能将完成一个 Pod 组件的更新。整个流程不只耗时,并且繁琐,机械化。这个脚本虽然没能提升pod lib lint 和 pod repo push 的执行速度,可是将这系列繁琐的操做,变成一句话完成。你能够一句话执行脚本,而后离开位置,去倒杯水,活动活动身子,稍微休息休息,再回来时,Pod 组件已经更新完毕并推送到远端了。python
你的 Pod 组件必须是已经正确配置,且以前有过手动输命令行更新的经历。git
1. podspec 小版本自加一,好比 s.version = "0.1.1"
自动变成 s.version = "0.1.2"
,或者s.version = "10.22.0.15"
变成s.version = "10.22.0.16"
,不管版本长什么样,只要写法是能经过 podspec 的语法检查,那么它就能够自动更新最后一位。github
2. pod lib lint 语法检查,若是有依赖私有源,能够在顶部配置地址,既可用于github 上的开源组件,也可用于 Gitlab 内部团队的私有组件,至于Bitbucket,没有试过,可是理论上应该是可行的,若是你发现不行,本身调试以后没法解决,能够在 issue 上提出。数组
3. git add, git commit, git push,git tag , git push —tags 一系列git 操做,完成提交与 Tag 的推送。组件化
4. pod repo push 操做,将pod组件推送到远端,完成一次pod组件的小版本更新。命令行
1. 将auto.py
文件拖入Pod组件工程中,并保证它与 podspec 文件处于同一级别的目录,以下图 调试
若是你以为有必要,可自行将auto.py
加入到 .gitignore 中。code
2. 打开auto.py
在顶部虚线框中进行配置。以下图cdn
第一项 sources 是pod组件所依赖的私有源地址,它是一个数组,能够填写多个私有源,用逗号隔开。其中 github.com/CocoaPods/S… 不须要填写,脚本内已经写了。blog
第二项是你的项目名称
第三项是podspec文件名
3. 打开终端,cd 到这个脚本文件所在目录中,执行 python auto.py
,便可开始小版本自动升级。若是你的 Pod 已经配置正确,而且以前有过手动输入指令进行升级的经历,那么脚本应该是能成功运行的。