iOS 私有库

趁着年前事不多,整理下私有库搭建流程以及遇到的坑,方便套路,以后会持续更新。

这里我用GitHub为例,公司自己的私有仓库同理。

一  创建远程索引库

远程索引库创建

名字一般用Specs,也许你有多个私有组件,可以共用一个索引库

二  本地索引库

1. 通过终端我们可以看到我们电脑本地有哪些所以库  $pod repo

本地索引库

2. 创建本地索引库并和远程索引库做关联

在终端输入 $pod repo add [本地索引库的名字] [远程索引库的地址]

为了方便查找本地索引库的名字和远程索引库的名字一样。

创建完成后可以通过finder文件->前往文件夹 /.cocoapods/repos/查看刚创建的本地索引库,

注意这个文件夹是隐藏的(怎么显示?问度娘吧,我也忘记了(*^__^*) )

三  远程代码库

在GitHub上创建一个远程代码库

远程代码库

四  本地代码库

1. 在终端中输入$pod lib create [组件名] 创建本地代码组件模版库

组件名方便记忆,一般和远程代码库名字一样,会有些提示信息,看自己需求选择。

2. 看下刚创建的组件模板目录结构

本地代码组件模版库目录

3. 删掉ReplaceMe.m文件,放入自己的代码进去,然后cd到Example目录中,$pod install 下把刚才放入Classes文件中的代码pod进Example中。

4. 编译是否报错,如果没有报错,修改podspecs索引文件

podspecs索引文件

5. 编译运行通过后,提交代码到远程代码库并打tag,相关命令如下

git add .

git commit -m “xxx”

git remote add origin 远程代码仓库地址

git push origin master 或者 git push -u origin master(一般第一次提交用)

git tag 版本号/git tag -a 版本号 -m “version 版本号”(注:这里的版本号必须和podspec里写的版本号一致)

git tag 查看版本号是否提交成功

git push --tags

6. 验证索引文件

在含有索引文件的目录下输入

$pod spec lint --allow-warnings

7. 验证通过后,pod repo push [本地索引库名] [索引文件名] --allow-warnings 提交索引文件到远程索引库。

8. 也可以在本地索引库中看到刚上传的索引文件

9. 在demo工程的Podfile文件中导入组件,需要注意的是,要指定组件远程索引库的地址,不然找不到

source 'https://github.com/XXX/ANSpecs.git'

source 'https://github.com/CocoaPods/Specs.git'

五  其他问题

到此,就基本完成了,如果说组件依赖了其他三方私有库,而且还包含静态包,需要在podspecs索引文件中添加相关依赖,在验证索引文件这步时,需要添加依赖库的索引源

pod spec lint --sources='私有库地址,https://github.com/CocoaPods/Specs.git' --use-libraries --allow-warnings

验证通过后,提交索引文件

pod repo push [本地索引库名] [索引文件名] --sources='私有库地址,https://github.com/CocoaPods/Specs.git' --use-libraries --allow-warnings

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 私有库的是随着公司在多个项目开展的时候,把一些常用的工具类制作成pod,方便在多个项目中使用,避免了来回拖入代码造...
    zl_xust阅读 3,552评论 0 1
  • 引言:本文主要介绍了iOS私有库的三种管理方式。在多产品线的情况下,包括业务层、自定义的控件、自定义的工具类,如日...
    Uncle_fs阅读 5,113评论 0 3
  • 本篇中使用的远程仓库是码市 注意: 默认读者会使用Git管理代码, 以及上传至远程Git仓库 如果有错误的地方请留...
    AlvinCrash阅读 5,882评论 2 4
  • 需要的知识点 it 相关指令 cocoaPod相关知识点(电脑正确安装了pod) ssh Git配置多个SSH-K...
    韧风透骨寒阅读 4,563评论 1 2
  • 项目组件化、平台化是技术公司的共同目标,越来越多的技术公司推崇使用pod管理第三方库以及私有组件,一方面使项目架构...
    swu_luo阅读 22,715评论 0 39

友情链接更多精彩内容