创建自己的cocoapods库

创建自己的cocoapods库
参考文档:https://www.jianshu.com/p/83de37280089

可以直接将代码上传到任意地址,并不需要一定是git上

需要注意的问题的问题:

1.有时候需要在终端切换目录,否则会导致不成功。一个时本地仓库目录,一个时Example目录,注意切换
2.注意当前的分支名称,是否是master,因为下面都是使用的master分支,要保证本地线上都有master分支
git branch //查看当前分支
//如果不是可以修改名称
git branch -m 旧分支名 新分支名 (修改分支名称)
git branch -r //查看远程分支
3.依赖库多个怎么写
s.dependency ‘Alamofire’
s.dependency ‘XXX’
s.dependency ‘XXX’

4.出现错误are not allowed to push new versions for this …

You ([email protected]) are not allowed to push new versions for this pod. The owners of this pod are [email protected].
pod trunk register老的邮箱 老的用户名 #执行之后需要邮箱点击连接
pod trunk add-owner 库名 新的邮箱 #新的邮箱需要你自己注册

Swift 注意点

1、枚举前面也要加 public/open
2、暴漏的类也要加public/open
3、遵循的代理方法,前面也要加public,否则会不执行
4、- WARN | [iOS] swift: The validator used Swift 4.0 by default because no Swift version was specified. podspec文件中添加 s.swift_version = ‘4.0’

简略步骤

一.创建账号
二.创建本地仓库
cd Desktop //进入桌面
pod lib create 名称 //创建项目
三.导入源码
项目/项目/Classes
四.创建远端仓库
1复制仓库地址,配置.podspec文件
2切换路径
进入项目的Example目录下执行此命令
pod update --no-repo-update
3成功后,打开Example项目,验证导入的代码是否可行
4验证一下.podspec文件
切换路径
现在终端的路径需要回到本地仓库的路径下
pod lib lint
有问题但不影响的话执行下面命令
pod lib lint --allow-warnings
出现passed validation,证明成功

5 上传内容至Git
添加远端仓库的地址
git remote add origin 远端仓库地址
把所有修改过的文件添加到缓存区
git add .
提交变动记录
git commit -m “提交源码”

遵循先拉后传原则,先拉取远程代码。
git pull origin master
出现问题,不用管,直接强制合并
git pull origin master --allow-unrelated-histories
然后推送代码到远端仓库
git push origin master
出现问题,还不管,强制覆盖。
git push --force 远端仓库地址

然后给依赖库打tag标签,注意,这个标签的版本号一定要和.podspec中的version一致
git tag 0.1.0
将tag标签推送到远端仓库,版本号同样和.podspec文件中的version一致
git push origin 0.1.0
五 创建远端索引库
六 创建本地索引库
1切换路径
进入桌面
cd
cd Desktop
2 执行命令
pod repo add 本地索引库名字 远端索引库的地址
比如: pod repo add SomeSupportSpec xxxxxx.git

3 验证是否成功
pod repo
出现你的索引库,证明成功
4 绑定.podspec文件到远端索引库
切换路径
需要进入回到本地仓库的路径下
pod repo push 索引库名字 本地仓库名字.podspec
比如:pod repo push SomeSupportSpec SomeSupport.podspec
七 发布
pod trunk push 名字.podspec --allow-warnings
比如:pod trunk push SomeSupport.podspec --allow-warnings

详细步骤

一、如果没有账号,就先创建账号
1.终端执行以下命令
pod trunk register 邮箱 '作者名称’
2.收到邮件并确认之后再执行以下命令
pod trunk me

二、创建本地仓库
1.首先准备即将上传的代码,随意写个文件就可。
2.创建本地库
打开终端,进入桌面,创建项目
cd Desktop
#SomeSupport是我的命名,这个命名任意起就好pod lib create SomeSupport
输入完成后,终端会显示下面几个问题,根据实际情况选择即可
创建自己的cocoapods库_第1张图片

问题回答完毕后会自动打开创建的项目,不用管最小化即可。然后在在桌面找到刚刚创建的项目,并打开,目录如下。如果你的目录中没有显示那几个灰色的文件(.git等)?分别按住command键和Shift键,右手的食指按一下.,即可,此时本地仓库创建完成。
创建自己的cocoapods库_第2张图片

三、将源码导入项目
1.将代码文件放到-Classes文件下

创建自己的cocoapods库_第3张图片

2.配置本地仓库支持的CocoaPods 文件
如下:
创建自己的cocoapods库_第4张图片

这个配置文件的参数需要注意一下
创建自己的cocoapods库_第5张图片

到这里,就需要创建远端仓库了。
四、创建远端仓库
1.建仓库
为了避免一些不可描述的问题发生,强烈建议远端仓库的名字和本地仓库的名字一致。
创建自己的cocoapods库_第6张图片

2.复制远端仓库的地址,我这里用的https格式
创建自己的cocoapods库_第7张图片

3.继续配置.podspec文件
配置完成保存,然后update一下就好了终端命令如下:
创建自己的cocoapods库_第8张图片

pod update --no-repo-update
注意:此时需要在项目的Example目录下执行此命令,注意切换位置。
在这里插入图片描述

4.此时已经添加完成
可以自行测试一下是否可行。
创建自己的cocoapods库_第9张图片

5.验证一下.podspec文件
源码没有问题了,现在验证一下.podspec文件的配置有没有问题吧,现在终端的路径需要回到本地仓库的路径下了。然后执行如下命令:
pod lib lint
可能会有问题,自己检查如果不影响就就不用在意。可以直接执行命令,尽量将WARN修改掉
pod lib lint --allow-warnings
创建自己的cocoapods库_第10张图片
创建自己的cocoapods库_第11张图片

看到显示了passed validation的字眼就表示配置文件也验证成功了,现在就可以把依赖库上传到Git了。
6.把依赖库上传到Git,并打标签tag
继续在本地仓库目录下执行命令,把依赖库上传到Git需要给依赖库打上tag标签,相当于标记版本号。
添加远端仓库的地址
git remote add origin 远端仓库地址
把所有修改过的文件添加到缓存区
git add .
提交变动记录
git commit -m “提交源码”
在这里插入图片描述

遵循先拉后传原则,先拉取远程代码。
git pull origin master
出现问题,不用管,直接强制合并
git pull origin master --allow-unrelated-histories
然后推送代码到远端仓库
git push origin master
出现问题,还不管,强制覆盖。
git push --force 远端仓库地址
创建自己的cocoapods库_第12张图片

然后给依赖库打tag标签,注意,这个标签的版本号一定要和.podspec中的version一致
git tag 0.1.0
将tag标签推送到远端仓库,版本号同样和.podspec文件中的version一致
git push origin 0.1.0
创建自己的cocoapods库_第13张图片

到这里,本地仓库和远端仓库都创建完成并且验证完成了,想要支持CocoaPods安装,还必须要一个管理仓库,也叫索引库。索引库和仓库一样也是需要两个,一个本地的一个远端的。
五、创建远端索引库
1.建远端索引库
创建远端索引库的方式和创建远端仓库的方式一样,如下图:
创建自己的cocoapods库_第14张图片

2.远端索引库的地址,我这里用的https格式
创建自己的cocoapods库_第15张图片

六、创建本地索引库
创建本地索引库,需要终端回到根目录,或者退出终端重新打开,还需要远端索引库的地址,因为需要把远端索引库和本地索引库关联起来,这就是需 要先创建远端索引库,再创建本地索引库的原因,为了避免一些不可描述的问题发生,还是强烈建议本地索引库的名字和远端索引库的名字一致,然后执行如下命令:
1.创建本地索引库
pod repo add 本地索引库名字 远端索引库的地址
创建成功终端如下显示:
在这里插入图片描述
在这里插入图片描述

2.验证是否创建成功
可以直接在终端输入命令查看创建结果,终端命令如下:
pod repo
创建自己的cocoapods库_第16张图片

3.绑定.podspec文件到远端索引库
到这里,准备工作都做完了,需要把.podspec文件推送到远端索引库进行绑定操作,终端需要回到本地仓库所在的目录下,再执行命令,终端命令如下:
pod repo push SomeSupportSpec SomeSupport.podspec
pod repo push 索引库名字 本地仓库名字.podspec
出现下图表示成功:
创建自己的cocoapods库_第17张图片

如果出现错误导致没有成功,可以按照warning提示修改,比如缺少summary等,或者需要补充使用到的frameworks。

七、发布到Cocoapods官方库中
首先先用cd到Spec文件所在的目录,提交之前,你需要注册pod账号。实质上是将"邮箱–名称–电脑"绑定在一起,所以这里不需要密码。如果第一次注册,邮箱和名称都是必须的。如果已经注册过,可以省略名称(除非你想修改名称)。
注册命令:

pod trunk register EMAIL [NAME]

执行后会发送邮件到邮箱,需要查看邮件并点击其中链接。
然后把SomeSupport.podspec提交到官方Spec Repo仓库,命令如下:

pod trunk push SomeSupport.podspec --allow-warnings

创建自己的cocoapods库_第18张图片出现上图,则代表成功。

提交之后cocoaPods官网更新会延迟,耐心等待半小时(或更长),然后将其更新到本地master spec repo:

1 pod repo update
2 rm ~/Library/Caches/CocoaPods/search_index.json
3 pod search SomeSupport    #重新下载search_index.json

八、更新版本
更新就是重新走一遍上传新代码、打标签、上传标签、绑定远端索引库、发布,其中谨记修改version。

你可能感兴趣的:(ios)