iOS组件化(二)----- 组件的更新

组件化系列传送门

iOS组件化(一)----- 创建私有组件库(在码云上操作)
iOS组件化(二)----- 组件的更新
iOS组件化(三)----- 加载图片等资源文件


在之前的组件里面添加新的代码,例如在基础的组件里面添加一个NewView目录

NewView目录

添加完成后我们需要更新到远程仓库

一、更新远程仓库

1. 打开你的HFMyTest.podspec文件,将原本的版本号改为0.2.0,与下面提交的tag保持一致
HFMyTest.podspec
2. 代码更新
cd /Users/hf/MyTest/HFMyTest

到本地仓库的位置

git add .
git commit -m '更新描述'
git pull  //可能在更新之前需要先拉下代码
git push origin master
commit更新
3. 版本更新

版本更新 这一步非常重要,为更新索引库做准备

git tag -a '0.2.0' -m '注释'
git push --tags
提交tag

查看远程仓库,标签数已经有2个了,点进去就可以看到0.2.0

码云上HFMyTest

二、修改描述文件并更新索引库

1. 验证远程lib
pod lib lint --use-libraries --allow-warnings
2. 验证远程spec
pod spec lint --use-libraries --allow-warnings
3. 更新索引库
pod repo push MyTestSpec HFMyTest.podspec --use-libraries --allow-warnings
更新索引库

如果在HFMyTest中的pod中查看最新的代码请

cd /Users/hf/MyTest/HFMyTest/Example
pod install

接下来就可以看到更新的最新代码


HFMyTest

三、第三方依赖

当我们的私有库需要依赖其它第三方才可以正常使用时,我们就需要在spec文件中开启依赖,例如下面所示代码,表明当前仓库需要依赖AFNetworkingSDWebImage

HFMyTest.podspec

s.dependency 'AFNetworking', '~> 3.0.0'
s.dependency 'SDWebImage', '~> 4.3.0'

修改后更新操作同上所述。

四、子库Subspecs

但是这里存在一个问题,如果来了一位新的小伙伴,他所负责的部分只需要HFMyTest下的NewView,而HFMyTest下的MyView才需要依赖AFNetworking,此时他若是pod一整个HFMyTest岂不是平白无故安装了第三方依赖库,那应该怎么做呢?

什么是Subspecs?这里我们可以搜索一下AFNetworking

pod search AFNetworking
AFNetworking

可以看到,如果我们只需要用到AFNetworking中的Reachability功能,那么并不需要将整个AFNetworking都下载下来,在Podfile中将pod 'AFNetworking'改为pod 'AFNetworking/Reachability'即可单独使用这一功能。

那接下来我们就来看看怎么描述一个子库吧
子库格式

s.subspec '子库名称' do |别名|
end

因为这里已经分离出子库了,所以s.source_filess.dependency就不能这么使用了,需要我们在子库里分别指定,所以我们直接把原来的s.source_filess.dependency都注释掉。写法参考如下

HFMyTest.podspec

#s.source_files = 'HFMyTest/Classes/**/*'
#s.dependency 'AFNetworking', '~> 3.0.0'
s.subspec 'MyView' do |c|
  c.source_files = 'HFMyTest/Classes/MyView/**/*'
  c.dependency 'AFNetworking', '~> 3.0.0'
end

s.subspec 'NewView' do |c|
  c.source_files = 'HFMyTest/Classes/NewView/**/*'
end

修改后再按之前的步骤更新索引库和组件库就可以了。
在成功更新组件库和索引库后我们再来搜索一下试试

pod search HFMyTest
HFMyTest

现在就可以爱装哪个就装哪个了,在Podfile中指定要安装的子库就行了
例如新建一个项目MyTest,在其Podfile修改如下

pod 'HFMyTest/NewView'
MyTest
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,921评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,635评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,393评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,836评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,833评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,685评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,043评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,694评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,671评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,670评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,779评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,424评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,027评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,984评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,214评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,108评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,517评论 2 343

推荐阅读更多精彩内容