远程私有库方案
一.创建本地和远程链接的描述库
1.在Coding.net
上创建一个用来保存podspec
描述文件的私有库并获得仓库的地址
2.使用pod repo add 私有库名 远程私有库地址
建立本地和远程的描述连接
例如:pod repo add FMLFMSpecs https://git.coding.net/xiaofeixia09/FMLFMSpecs.git
如果报错, 没有权限,可以通过命令行输入ssh-keygen
获取公钥和私钥,并将公钥填入Coding.net
中
3.使用pod repo
查看当前的cocoapods库
二.创建本地仓库并填写描述信息
1.在Coding.net
上创建一个项目工程,用来存放库地址和测试文件地址:FMLFMBase
2.在本地使用pod lib create 测试工程名
创建一个测试工程
3.找到项目中的ReplaceMe.m
文件并删除
- 将需要使用的库放在该
Classes
文件夹下,修改.podspec
文件。需要注意的是,修改source为远程仓库名称(注意添加使用的私有库)
重要的描述文件
5.使用pod install
安装项目到xcode,然后编译看是否有错
6.使用pod lib lint --allow-warnings
进行.podspec
文件验证并忽略错误,它会对改文件夹下的所有描述文件进行本地验证
7.使用pod spec lint
进行远程验证
如上出错需要我们上传本地代码到远程仓库,并且对代码进行tag标签设置
三.上传本地代码到远程仓库并打tag标签
1.使用如下命名进行git文件提交
git add .
git commit -m '注释'
git remote add origin https://git.coding.net/xiaofeixia09/FMLFMBase.git
如果git上已有代码文件:
1.使用 git pull origin master --allow-unrelated-histories 拉取远程仓库代码到服务器
2.将拉取后的文件再次调用 git add .和 git commit -m '注释'
git push origin master
2.对代码进行tag标签设置 (注意:tag的版本得和. podspec显示的版本保持一致)
可以在
Coding.net
查看标签结果tag结果
四.上传本地描述文件到远程私有仓库
1.使用pod repo push FMLFMSpecs FMLFMBase.podspec
将本地描述文件提交到远程描述仓库
如果因为警告导致报错,可以添加--allow-warnings
进行警告忽略
2.查看Coding.net
进行确认
3.在其他项目中导入可以直接使用远程私有仓库了
pod search结果
4.检索问题检查
检索问题
五.测试刚创建的repo
1.如果在项目中导入,需要在Profile填写source信息,因为默认是从cocoapods的master
进行检索
source地址就是新添加的repo的URL
image.png
2.但是如果只指定了刚才创建的repo source,在导入共有库的文件时是无法安装的
安装出错
需要做的是将共有库的URL地址也作为source加入到Profile文件中
六.删除本地repo
pod repo remove '库名'
ps.在添加资源的时候,应该放在Repleace.m文件的上层目录:Assets目录
Assets目录位置.png
并且去掉.podspec文件中的resource_bundles
注释
使用的资源文件不一定是png,可以使任意类型
更多文章可以参考:https://guides.cocoapods.org/making/private-cocoapods.html