把自己Github上的代码添加Cocoapods支持

简介: 这两天被cocoapods折磨的心力憔悴。看cocoapods官网的添加支持,但是介绍的(ying)比(yu)较(tai)简(cha)单,而且有的步骤也没有写上,导致看着官方文档也没有成功,后来查阅了简书、CocoaChina等等,还是已经接近崩溃。没有一个完整的介绍。索性多个文档对比测试,最后终于

 

一、前言
这两天被cocoapods折磨的心力憔悴。看cocoapods官网的添加支持,但是介绍的(ying)比(yu)较(tai)简(cha)单,而且有的步骤也没有写上,导致看着官方文档也没有成功,后来查阅了简书、CocoaChina等等,还是已经接近崩溃。没有一个完整的介绍。索性多个文档对比测试,最后终于成功的让自己Github上的库成功支持Cocoapods安装。
 
二、开始
这里我将从最初的开始进行介绍,包括Github上创建项目已经上传项目,到最后的支持Cocoapods。
步骤如下:
  • 代码上传Github
  • 创建podspec文件,并验证是否通过
  • 在Github上创建release版本
  • 注册CocoaPods账号
  • 上传代码到CocoaPods
  • 检查上传是否成功
1 代码上传Github
首先我们打开github.com,然后创建自己的项目工程:

 

这里注意那个MIT License,在后面添加Cocoapods支持的时候会用到(稍后介绍)。然后点击创建即可。
然后用SouceTree将代码down到本地,将自己的项目放到里面,文件夹如图所示:

 

这里的LICENSE就是刚才说的MIT License添加的文件。RSADemo是示例工程,ZGRSAEncryptor就是提供给他人使用的库。(ZGEncrptor(For java).zip是后端的代码)
然后提交到Github就可以了。
 
2创建podspec文件
我们使用终端到工程目录下:

 

然后执行下面的命令:
pod spec create ZGRSAEncryptor
这里的ZGRSAEncryptor就是pod添加市的名字(例如MBProgressHUD)。执行完后的结果: 

 

此时在工程文件夹下也会多一个ZGRSAEncryptor.podspec文件。这里我用Sublime Text打开并做了如下编辑:
Pod::Spec.new do |s|
  s.name         = "ZGRSAEncryptor"
  s.version      = "1.0.0"
  s.summary      = "A Library for iOS to use for RSA encryptor."
  s.homepage     = "https://github.com/ScottZg/ZGRSAEncryptor"
  s.license      = "MIT"
  s.author             = { "scottzg" => "scottzg@126.com" }
  s.source       = { :git => "https://github.com/ScottZg/ZGRSAEncryptor.git", :tag => "#{s.version}" }
  s.source_files  = "ZGRSAEncryptor/*.{h,m}"
end
name:类库的名称这里字段介绍如下:
version:库的版本
summary就是介绍语,就是:

 

homtepage:Github上项目地址
license:许可证
author:作者
source:项目的https链接地址
source_files:要共享的代码,这里是ZGRSAEncryptor下面的所有代码。
接下来执行下面的命令进行验证:
pod lib lint ZGRSAEncryptor.podspec
结果多种多样,如果有错,则按照提示进行改错即可。在这里,我执行的结果如下图: 

 

发现了多个警告,只要不是错误就行,警告可以直接忽略(红色也提示如何忽略):
pod lib lint ZGRSAEncryptor.podspec —allow-warnings
结果如下:
当看到ZGRSAEncryptor passed validation之后,就说明验证通过了。
 
3 在Github上创建release版本
打开项目的目录,然后创建release版本的类库:
 

 

点击 箭头指向开始创建release版本,(点击 Create a new release):

 

点击Publish release即可。创建完成后如图所示:
这样第三步就完成了
 
4 注册CocoaPods账号
执行命令行:
pod trunk register 邮箱地址 ‘用户名’ —description='描述信息'
执行完之后结果如下:

 

黄色提示已经发送了一个验证码到邮箱,你可以打开你的邮箱验证即可。打开邮件中的链接后如下:

 

这样就成功注册了Cocoapods账号。
可以用
pod trunk me

检查是否创建成功。成功的结果如下:

5 上传代码到CocoaPods

首先检测文件格式的有效性:
pod spec lint
结果如下: 

 

没有错误,但是有警告。可以使用 —allow-warnings忽略:

 

出现passed validation就说明通过验证了。然后执行:
pod trunk push ZGRSAEncryptor.podspec —allow-warnings
执行结果如下:(速度应该有的慢)

 

说明了已经上传成功。
 
6 检查上传是否成功
使用
pod search ZGRSAEncryptor
结果如下:
ok,已经成功了。这样就可以让其他人进行搜索使用了。
 
三、总结
百度、Google了多篇文档,然后进行总结,终于实现了构建自己的Cocoapods库。在后面我将会继续学习 怎么在本地进行构建、怎么在公司多人开发的时候进行构建私有库开发。
 
四、参考文档:
相关文章
|
3月前
|
开发工具 数据安全/隐私保护 git
如何提交代码到github
如何提交代码到github
|
2月前
|
人工智能 运维 Linux
一文了解IntelliJ IDEA如何使用git上传代码到GitHub(附常见问题解决方案)
一文了解IntelliJ IDEA如何使用git上传代码到GitHub(附常见问题解决方案)
92 0
|
8月前
|
存储 运维 安全
【运维知识高级篇】一篇文章带你搞懂GitHub基础操作!(注册用户+配置ssh-key+创建项目+创建存储库+拉取代码到本地+推送新代码到Github)
【运维知识高级篇】一篇文章带你搞懂GitHub基础操作!(注册用户+配置ssh-key+创建项目+创建存储库+拉取代码到本地+推送新代码到Github)
140 0
|
2天前
|
Linux 网络安全 开发工具
【超详细!超多图!】【代码管理】Python微信公众号开发(3)- 服务器代码上传Github
【超详细!超多图!】【代码管理】Python微信公众号开发(3)- 服务器代码上传Github
10 0
|
4月前
|
开发工具 git Windows
Git | 向GitHub提交代码超时处理
向GitHub提交代码超时处理
113 0
|
8月前
|
开发工具 git
搭建多个远程仓库,将代码同时提交Github、Gitee
搭建多个远程仓库,将代码同时提交Github、Gitee
|
3月前
|
语音技术
如何在GitHub正确提PR(Pull Requests),给喜欢的开源项目贡献代码
最好的中文TTS项目Bert-vits2更新了中文特化分支,但可能由于时间仓促,代码中存在不少的bug,作为普通用户,有的时候也想为自己喜欢的开源项目做一点点贡献,帮助作者修改一些简单的bug,那么该如何开始? 本次我们以Bert-vits2项目为例子,分享正确提交PR(Pull Requests)的方式。
|
4月前
|
编译器 定位技术 开发工具
分布式版本控制系统Git的下载、安装与使用其复制GitHub项目代码的方法
分布式版本控制系统Git的下载、安装与使用其复制GitHub项目代码的方法
|
4月前
|
数据可视化 开发工具 git
Git【实践 01】使用Git工具托管本地代码到GitHub简单易懂的图文教程(含Git+第三方工具TortoiseGit+中文语言包百度云盘资源)
Git【实践 01】使用Git工具托管本地代码到GitHub简单易懂的图文教程(含Git+第三方工具TortoiseGit+中文语言包百度云盘资源)
50 0
|
4月前
|
存储 搜索推荐 Java
开发者热议GitHub代码搜索政策,最佳搜索解决方案探索
近日,名为koepnick 的开发者因在一台老式电脑上使用GitHub 搜索自己的存储库代码,却没有手机等设备协助验证,导致无法登录GitHub 账户,发文怒斥GitHub:如若没有登录,就无法使用搜索代码服务,与其这样不如弃用。 其实,早在今年6月,GitHub 官方便发布了一封《代码搜索现在需要登录》的公告内容,官宣除了在 GitHub.com 上全局搜索代码已经需要用户登录的政策之后,自 6 月 7 日起,这一政策将其扩展为包括存储库范围的搜索。即要访问 GitHub 的新代码搜索和代码导航的全部功能,需要创建账户或登录 GitHub.com。