iOS-CocoaPods私有库创建

Posted MinggeQingchun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS-CocoaPods私有库创建相关的知识,希望对你有一定的参考价值。

一、创建私有仓库

需要先创建两个私有库,一个是repo索引库 ,一个是索引库TestRepos;

一个是kit代码仓库,一个仓库是存放代码的仓库TestKit(带上README.md和LICENSE),我这边使用的私有库是在github上创建的。

两个库的关系就好比AFNetworking和cocoapod的关系,换句话说,你的索引库对于你的代码库来说,就相当于cocoapod,你创建的所有代码库都存放在索引库里。

1、索引库:存放spec文件的地方,用于索引到代码的位置。
2、私有库:指的是我们真正放置组件代码的地方。
打个比方,索引库就好比指针,私有库就好比对象,指针中存放了对象的地址,通过地址可以找到对象!

 1.创建远程索引库

github新建仓库

点击New repository,然后配置仓库属性

仓库配置

在图中1处填写仓库名称,选择图中2处的Private选项,图中3位置最好选上,在创建私有库时自动添加一个 README.md文件,以防止后面把本地代码库放入索引库时报错

Your configuration specifies to merge with the ref 'refs/heads/master'

from the remote, but no such ref was fetched.

然后点击 Create repository,创建仓库完成。

2.创建远程代码库

步骤与创建远程索引库相同,在配置仓库页面需要把图中3和图中4位置选中。

二、将索引库添加到本地

上面两个私有库创建完成之后,将远程索引库添加到本地,终端输入如下命令 

cd ~/.cocoapods/repos

pod repo add TestRepo https://github.com/你的github账号名/TestRepo.git

“cd ~/.cocoapods/repos” cd到repo目录下,pod repo add 远程索引库名称 远程索引库仓库地址

远程索引库添加成功

添加成功后 输入ls 可以查看到 TestRepo项,也可以 Shift +cmd+G 在地址框里输入 ~/.cocoapods/repos 回车查看是否有TestRepo文件夹,到这里本地索引库就添加成功了。

三、创建本地Pod工程文件

创建本地podspecs代码库

cd +桌面目录,然后 pod lib create +本地pod工程名称,成功之后Xcode会自动打开本地pod工程,且桌面出现一个 TestKit文件夹,成功之后需要在终端输入一下几个问题的答案

pod工程创建成功后需回答的问题

三、配置pod工程文件

Xcode打开的工程中找到 Podspec Metadata目录下面的.podspec文件,

.podspec文件

其中s.homepage 对应你远程代码库的地址因为是私有库,所以后面验证.podspec文件时会报错 ,所以验证的时候用 "pod lib lint  xxx.podspec --allow-warbnings "命令。.podspec文件配置完成之后,可以开始验证了。

.podspec文件验证成功

四、添加要封装的代码 

验证完成之后就可以添加要封装的pod工程文件,先把pod工程中ReplaceMe.m文件删除

pod工程目录

将要添加的文件放入到Classes目录下,要添加的图片资源等放入到Assess目录下

pod工程存放资源的目录

将Classes添加到Pod工程

Classes文件位置

然后添加一个LKViewController类,声明一个-(void)biuldPrivateSpeo;方法

自定义的方法

在LKViewController.m文件中实现该方法

方法实现

添加完成之后 ,cmd+B编译一下成功之后要把代码上传到github远程代码仓库里。

git add .

git commit -m "first commit"

git remote add origin  远程代码库地址

git push -u origin master

直接push 会报错

git push报错

这是因为我们本地的Podspec项目里面的READEME.md和LICENSE与远程仓库冲突了,终端执行如下命令解决冲突

git pull origin master

git pull origin master --allow-unrelated-histories

解决冲突后要重新 add 在提交

git add . 

git  commit -m "fix Config"

重新push

git push -u origin master

上传成功之后如下图

pod项目上传成功

六、添加标签Tag

git tag 0.1.0

git push origin 0.1.0

成功效果如下

tag添加成功

七、将私有库放到索引库里面

cd 到本地pod工程根目录,执行 pod repo push 索引库  xxxx.podspec 

pod repo push TestRepo TestKit.podspec  --allow-warnings(允许警告,不然有时push把警告也当error处理)

添加成功效果如下

私有库添加成功

八、调用

新建一个工程pod 引入私有库

pod引入私有库

注意:

source 后面的链接是必须写的,对应的是远程索引库的地址

pod引入成功

私有库pod引入成功

在项目中调用

私有库调用成功

参考链接

iOS私有库创建(从0到1)

https://www.jianshu.com/p/ea34acffa265

https://www.jianshu.com/p/3f5d7c69f366?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

https://www.cnblogs.com/anywherego/p/11149609.html

以上是关于iOS-CocoaPods私有库创建的主要内容,如果未能解决你的问题,请参考以下文章

IOS-CocoaPods进阶篇

iOS-Cocoapods更新不及时

iOS-CocoaPods原理

创建反应本机库并将CocoaPods添加到该库

如何利用CocoaPods创建私有库

远程私有库的创建 pod