学习到这块知识点时,自己做了如下记录:
文章比较长,因为把这四部分放在一起了,方便查看。
(1)创建远程私有库
(2)添加多个文件的方法
(3)自己封装的工具类设置依赖
(4) 分文件夹层级和 pod安装时只指定下载某个工具类
1.创建远程私有库
方便大家理解:整个思路如下图:
本地新建个文件夹,在该文件夹下 执行以下命令,创建一个模板
1. TMProject teemo$ pod lib create TeeMoCategory
2 .打开项目,删除Classes里的 ReplaceMe, 把自己想组件化的类丢到Classes里。(这里以简单的类别为例)
3.在码云创建私有库(存放这个组件
创建好后,可以看见如下界面,复制URL 提交类别会用到
cd 到TeeMoCategory目录,执行以下操作,来提交类别代码到远程私有仓库
git add .
git commit -m "提交类别"
git remote add origin https://gitee.com/TeeMoYan/TeeMoCategory.git //(前面复制的URL 拿过来
git push -u origin mster // 推送到远程仓库, 执行后刷新码云,就可以看到提交的代码了
打开项目里EXample的 xcode 项目 TeeMoCategory.xcworkspace 做如下修改(或者修改TeeMoCategory目录下的TeeMoCategory.podspec文件 是一样的!)
修改完在终端,输入 pod lib lint 验证修改的(本地.podspec文件)是否正确!
结果报错了!!!
此时修改里面刚才要注意的地方, 删除最后面的 改为 s.homepage = 'https://github.com/TeeMoYan'
继续验证!
接下来验证远程(提交码云哪里)
pod spec lint //结果又报错了,上面有 s.version = '0.1.0' 找不到这个tag,因此需要打个tag
git tag '0.1.0' //打个tag
git push --tags. // 推送到远程
继续验证,如下验证成功!
本地和远程都验证通过后,添加 podspec到 spec库里! master 是cocoapods 的,TMSpec是我自己创建的,不会添加的小伙伴,请看上一篇文章(下面有链接)
pod repo push
添加后 就可以使用pod search 'TeeMoCategory' 查看了,但是没搜到,不要着急!
切换到cocoapods 缓存 删除 本地 search_index.json
Caches teemo$ cd ~/Library/Caches/CocoaPods/
然后在终端 pod search 'TeeMoCategory' (search_index.json这个文件会重新更新
成功后可以在 cd ~/.cocoapods/repos 看到自己的私有pod.spec
注意:远程私有 在配置profile 文件时,要这么写!指定使用源
远程私有库管理私有项目1:(制作密钥和添加自己的pod rep源) :https://www.jianshu.com/p/bd677226dad9
发布自己的pod开源框架到CocoaPods,让别人也能pod安装你写的框架: https://www.jianshu.com/p/31ad115465cc
希望可以帮到大家!
2.添加多个文件
如果还想再添加别的类别 进去,需要注意事项
1.把需要添加的 类 丢就Classes里面,然后提交
git add .
git commit -m "提交类别"
git push
2.修改spec文件(TeeMoCategory.podspec
别忘了pod lib lint 验证本地修改
3.提交修改到远程
git add .
git commit -m "修改tag0.3.0"
git push origin master
4.此时 还需要 打个 tag 0.3.0 ,完成后可以再码云查看到
git tag '0.3.0'
git push --tags
验证远端spec : pod spec lin t
验证没问题:如下
5.cd ~/.cocoapods/repos 下查看本地索引库没有0.2.0的版本,因此需要添加
pod repo push 添加自己修改的po spec 到spec索引库
显示有版本了,就可以正常使用了。记得修改profile 里版本为0.3.0哦
3.添加有依赖的类
添加依赖!(假如你是在 第三方MBProgressHUD 基础上封装了一个工具类
修改spec文件时,多修改一个地方,如下图:(其他操作和第二部分一样)
使用时在profile 还要指定 cocoaspod的源(URL
4.指定安装某个工具类
大家或许还有两个疑问
1.细心的小伙伴或许会发现,项目中类是分好文件夹的,但是 通过pod 安装的却没有,因为cocoapods 是默认只有两层的。
2.如何只安装 一个文件夹下的工具类呢?
这就需要我们在spec文件处理下。修改spec 如下
2. 修改完后提交
git add .
git commit -m "提交分组Spec"
git push origin master
3.打个tag,和spec文件中一置
git tag 0.10.0
git push --tags
4.验证没问题提交(pod lib lint 和pod spec lint 验证
pod repo push +你的spec库 + spec文件
成功后通过 pod search 就可以搜索到
使用时 在podfile 文件修改如下:(此时就会发现分好文件夹了