Pod私有库搭建
1、申请私有索引库项目权限:
https://gitlab.pengpengla.com/pengpengios/podspec
2、权限申请成功后,将索引库clone到本地
pod repo add pengpengios https://gitlab.pengpengla.com/pengpengios/podspec.git
之后会在本地目录/Users/用户名/.cocoapods下出现一个新的文件夹pengpengios(即上述pod命令ad d后自定义的名字)。此文件夹下用于存放此索引库下的全部私有库的podspec文件。
3、私有库搭建
切换到自己盛放项目的文件目录下,创建私有库:
pod lib create HNMacroConst
执行上述命令创建私有库过程中会要求回答几个问题,如图:
根据自己的需要输入选项回车继续执行即可。
执行完毕后私有库项目即创建成功,结构如下:
可在Example下直接打开项目。Classes即私有库的代码文件。
4、将自己的代码文件拷贝到Classes文件夹下,然后命令行切到Example目录下,执行pod update命令,上述代码文件即成功更新到Example下的示例项目中。
gi
5、关联私有远程库
5.1、gitlab创建仓库
5.2、回到上述工程的根目录下,git remote add origin URL 关联并push项目到gitlab仓库,此处过程省略。
6、验证podspec
6.1、首先要给我们的私有库打上tag
git tag 1.0.0
git push --tags
6.2、修改podspec配置,将homepage和source源修改为我们自己的仓库地址
6.3、设置完成后执行:
//本地
pod spec lint --allow-warnings //远程
如果输出HNMacroConst passed validation.则验证通过
如果未验证通过请
1.如果有引用其它私有库需要在后面加上私有库的源地址 --sources=https://xxxx
2.检查Tag是否匹配,是否上传
引用静态库报错
ERROR | [iOS] unknown: Encountered an unknown error (The 'Pods-App' target has transitive dependencies that include statically linked binaries:
添加 --use-libraries
如:pod spec lint --allow-warnings --use-libraries
6.4、将修改提交到仓库
7、加入索引库
pod repo push pengpengios HNMacroConst.podspec --allow-warnings
如果有依赖其他私有库,要在后面添加源地址,多个以英文逗号分隔开
pod repo push pengpengios HNMacroConst.podspec --allow-warnings --sources=https://xxxx.xx,https://xxooxxoo
此步骤是将我们的私有库加到我们公共的私有索引库中,上述命令的pengpengios为第二步自定义的索引库本地名,tage.podspec为我们上述私有库的podspec文件。
执行上述命令后,在.cocoapods/repos/pengpengios文件夹下会出现HNMacroConst文件夹及对应的tag:
8、其他项目引用
首先需要增加索引源,即https://gitlab.pengpengla.com/pengpengios/podspec.git
之后就可以pod install使用了
But!!!
最后还有非常重要的一点,以上自己创建私有库仓库权限请给相关人员(包括要引用此库的人员),否则他人pod install会失败。
同时,他人在pod引入仓库时,要记得先执行下面的命令,更新下本地的索引库:
pod repo update
9、后期更新私有库
在私有库更新的需求开发完成后,需要对应的调整podspec文件的s.version版本号,提交更新后需要再根据version打上对应的tag标签,pod spec lint 后push到仓库,其他人需要执行pod repo update后就可以更新到此版本(本人除外)。