iOS cocospod 私有库过程及问题总结

需要理解的一点是,创建私有库是需要两个Git库的(或者理解成两个项目)一个用来存储repo,另外一个是项目Git库(也可以是多个),然后把项目的podspec放到repo下面

我遇到了一个问题,如果在代码里面建立文件夹的话,pod lib lint的时候提示我找不到头文件,希望知道的大神告知一下。

总结几步

1、 创建私有的库

 # pod repo add [Private Repo Name] [GitHub HTTPS clone URL]

2、创建pod工程

$pod lib create 项目名

3、创建代码,放到Classes中,测试代码可用性

pod update

4、提交代码到代码仓库中

$ git add .
$ git commit -s -m "初始化MyLib 库"
$ git remote add origin git@git.coding.net:kensla/MyLib.git           #添加远端仓库
$ git push origin master     #提交到远端仓库
$ git tag -m "first release" "0.1.0" #打上标签,这个很重要
$ git push --tags     #推送tag到远端仓库

5、编辑podspec文件
6、验证

$ pod lib lint

7、提交到私有库中

# pod repo push [Repo名] [podspec 文件名字]

8、使用私有库

#私有Spec Repo
https://git.coding.net/flowtctd/TYBasicModule.git
pod '  TYBasicModule', '~> 0.1.1'
一、提示403错误

在cocospod的文件之中homepage只能用http或者HTTPS的git地址。在执行pod install的时候git提示如下错误。
这里写图片描述
只需要修改
s.homepage='https://你的Git用户名@git.coding.net/flowtctd/testLoginModule.git'不要忘记s.source一起修改。

二、提示 [!] The repo cxpodlogin at ../../../.cocoapods/repos/cxpodlogin is not clean 错误

cd 私有库 git clean -f

三、修改 repo 或 podspec

最后介绍一下如何删除一个私有Spec Repo,只需要执行一条命令即可
$ pod repo remove WTSpecs
这样这个Spec Repo就在本地删除了,我们还可以通过
$ pod repo add WTSpecs git@coding.net:wtlucky/WTSpecs.git
再把它给加回来。
如果我们要删除私有Spec Repo下的某一个podspec怎么操作呢,此时无需借助Cocoapods,只需要cd到~/.cocoapods/repos/WTSpecs目录下,删掉库目录
wtlucky@wtluckydeMacBook-Pro:~/.cocoapods/repos/WTSpecs$ rm -Rf PodTestLibrary
然后在将Git的变动push到远端仓库即可

wtlucky@wtluckydeMacBook-Pro:~/.cocoapods/repos/WTSpecs$ git add --all .
wtlucky@wtluckydeMacBook-Pro:~/.cocoapods/repos/WTSpecs$ git ci -m "remove unuseful pods"
wtlucky@wtluckydeMacBook-Pro:~/.cocoapods/repos/WTSpecs$ git push origin master

在pod push过程中出现依赖的库找不到的情况 Unable to find a specification for xxxxx Pod。

$ pod repo remove master
$ pod setup
再重新pod push就好了

我参照的cocospod组件博客是:
https://blog.csdn.net/zy_flyway/article/details/53394768
https://www.jianshu.com/p/107cc74847ab

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值