一、创建私有仓库
需要先创建两个私有库,一个是repo索引库 ,一个是kit代码仓库,我这边使用的私有库是在github上创建的。
1.创建远程索引库
![](https://img.haomeiwen.com/i5808883/bb089d4af1880aeb.png)
github新建仓库
点击New repository,然后配置仓库属性
![](https://img.haomeiwen.com/i5808883/36a894949ff271b8.png)
仓库配置
在图中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 远程索引库名称 远程索引库仓库地址
![](https://img.haomeiwen.com/i5808883/27a35d03cba6d3ee.png)
远程索引库添加成功
添加成功后 输入ls 可以查看到 TestRepo项,也可以 Shift +cmd+G 在地址框里输入 ~/.cocoapods/repos 回车查看是否有TestRepo文件夹,到这里本地索引库就添加成功了。
三、创建本地Pod工程文件
创建本地podspecs代码库
![](https://img.haomeiwen.com/i5808883/fc0a7365df2e2bea.png)
cd +桌面目录,然后 pod lib create +本地pod工程名称,成功之后Xcode会自动打开本地pod工程,且桌面出现一个 TestKit文件夹,成功之后需要在终端输入一下几个问题的答案
![](https://img.haomeiwen.com/i5808883/97c15b9fba4ef040.png)
pod工程创建成功后需回答的问题
三、配置pod工程文件
Xcode打开的工程中找到 Podspec Metadata目录下面的.podspec文件,
![](https://img.haomeiwen.com/i5808883/4c86255dab468d8a.png)
.podspec文件
其中s.homepage 对应你远程代码库的地址因为是私有库,所以后面验证.podspec文件时会报错 ,所以验证的时候用 "pod lib lint xxx.podspec --allow-warbnings "命令。.podspec文件配置完成之后,可以开始验证了。
![](https://img.haomeiwen.com/i5808883/21741815da1235d0.png)
.podspec文件验证成功
四、添加要封装的代码
验证完成之后就可以添加要封装的pod工程文件,先把pod工程中ReplaceMe.m文件删除
![](https://img.haomeiwen.com/i5808883/b54fdc9f05f186f4.png)
pod工程目录
将要添加的文件放入到Classes目录下,要添加的图片资源等放入到Assess目录下
![](https://img.haomeiwen.com/i5808883/d4f94eaefb340d13.png)
pod工程存放资源的目录
将Classes添加到Pod工程
![](https://img.haomeiwen.com/i5808883/e2b023dd93298f57.png)
Classes文件位置
然后添加一个LKViewController类,声明一个-(void)biuldPrivateSpeo;方法
![](https://img.haomeiwen.com/i5808883/fc9d2254880df410.png)
自定义的方法
在LKViewController.m文件中实现该方法
![](https://img.haomeiwen.com/i5808883/2c94a7f2285e884c.png)
方法实现
添加完成之后 ,cmd+B编译一下成功之后要把代码上传到github远程代码仓库里。
git add .
git commit -m "first commit"
git remote add origin 远程代码库地址
git push -u origin master
直接push 会报错
![](https://img.haomeiwen.com/i5808883/fdb3e373d7ed59a8.png)
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
上传成功之后如下图
![](https://img.haomeiwen.com/i5808883/cc55ff99684c0e4c.png)
pod项目上传成功
六、添加标签Tag
git tag 0.1.0
git push origin 0.1.0
成功效果如下
![](https://img.haomeiwen.com/i5808883/08726ec070c4b1a4.png)
tag添加成功
七、将私有库放到索引库里面
cd 到本地pod工程根目录,执行 pod repo push 索引库 xxxx.podspec
pod repo push TestRepo TestKit.podspec
添加成功效果如下
![](https://img.haomeiwen.com/i5808883/a24e7406f0c14321.png)
私有库添加成功
八、调用
新建一个工程pod 引入私有库
![](https://img.haomeiwen.com/i5808883/8ed8f14994f30043.png)
pod引入私有库
注意:
source 后面的链接是必须写的,对应的是远程索引库的地址
pod引入成功
![](https://img.haomeiwen.com/i5808883/def0554c982a5e81.png)
私有库pod引入成功
在项目中调用
![](https://img.haomeiwen.com/i5808883/ed51b76071b9dc57.png)
网友评论