CocoaPods公有库的创建
CocoaPods公有库的创建
一. 注册CocoaPods账号 要想创建开源的Pod库,就要注册一个CocoaPods账号,我们使用终端注册, email 用你的 GitHub 邮箱.
$ pod trunk register email 'user_name' --verbose
复制代码
等终端出现下面文字,CocoaPods 会发一个确认邮件到你的邮箱上,登录你的邮箱进行确认。
[!] Please verify the session by clicking the link in the verification email that has been sent to you_email
复制代码
邮件确认后,在终端输入以下命令:
pod trunk me
复制代码
可以看到我们的注册信息
» pod trunk me- Name: syx- Email: 872934694@qq.com- Since: April 2nd, 19:19- Pods: None- Sessions:- April 2nd, 19:19 - August 8th, 19:20. IP: 218.80.221.11
复制代码
二. 创建Git仓库 在GitHub上创建一个公开项目。创建完成之后,将其克隆下来。 接下来,将代码文件放入本地仓库里,并创建.podspec
文件。 在仓库目录下,使用终端命令创建
$ pod spec create 仓库名
复制代码
这时就会在你的仓库下生成 仓库名.podspec 文件 修改里面的配置就可以发布了,但是里面的配置有很多并不是必须的,写多了等下验证还不让过?。 所以,我们直接使用以下必须的就可以了,当你需要特别的配置时,再去添加。
Pod::Spec.new do |s|s.name = "PublicPodsDemo2" # 项目名称s.version = "1.0.0" # 版本号 与 你仓库的 标签号 对应s.summary = "私人pod代码" # 项目简介s.license = "MIT" # 开源证书# s.license = { :type => "MIT", :file => "FILE_LICENSE" }s.homepage = "https://github.com/shenyunxiang/PublicPodsDemo2" # 仓库的主页s.source = { :git => "https://github.com/shenyunxiang/PublicPodsDemo2.git", :tag => "#{s.version}" }#你的仓库地址,不能用SSH地址s.source_files = "PublicPodsDemo2/classes/*.{h,m}" # 你代码的位置, PublicPodsDemo2/*.{h,m} 表示 PublicPodsDemo2 文件夹下所有的.h和.m文件s.requires_arc = true # 是否启用ARCs.platform = :ios, "8.0" #平台及支持的最低版本# s.frameworks = "UIKit", "Foundation" #支持的框架# s.dependency "JSONKit", "~> 1.4" # 依赖库# Users.author = { "SYX" => "872934694@qq.com" } # 作者信息# s.social_media_url = "http://twitter.com/xxx" # 个人主页end
复制代码
配置文件写玩了,最关键的一步到了,.podspec
文件的格式是否正确
$ pod lib lint
复制代码
验证会出现成功出现
-> PublicPodsDemo2 (1.0.0)PublicPodsDemo2 passed validation.
复制代码
三. 给仓库打上标签推送到远程 验证成功后,将仓库提交到远程,然后给仓库打上标签并将标签也推送到远程。
标签相当于将你的仓库的一个压缩包,用于稳定存储当前版本。标签号与你在 s.version = "1.0.0"的版本号一致 1.0.0
创建标签
$ git tag -a 1.0.0 -m '标签说明'
推送到远程
$ git push origin --tags
复制代码
四. 发布.podspec 最后一步,发布项目的描述的文件 PublicPodsDemo2.podspec 在仓库目录下执行
pod trunk push PublicPodsDemo2.podspec
复制代码
将PublicPodsDemo2.podspec
发布到公有的speecs
上,这一步其实做了很多操作:
- 更新本地 pods 库 ~/.cocoaPods.repo/master
- 验证.podspec格式是否正确
- 将 .podspec 文件转成 JSON 格式
- 对 master 仓库 进行合并、提交.master仓库地址
成功后将会出现下列信息:
Updating spec repo `master`
Validating podspec-> PublicPodsDemo2 (1.0.0)Updating spec repo `master`
复制代码
三. 更新维护 当你的代码更新维护后,就需要重写发布,流程是:
- 更新
ProjectName.podspec
中的版本号 - 打上标签推送远程
pod trunk push ProjectName.podspec
推送到pods仓库
到此,你已经掌握了创建和维护一个Cocoapods公有仓库的技能了。
参考链接:Pod命令
CocoaPods公有库的创建相关推荐
- CocoaPods公有库和私有库制作
认识公有库和私有库 公有库:开源自己封装的库供别人使用,且往cocoaPods的官方Repo仓库(即CocoaPods Master Repo)中新增自己库的索引,该库索引是以*.podspec.js ...
- 创建Cocoapods私有库
本文以自己在公司做的一个手势密码私有库GesturePasswordKit为例说明. 1.在gitlab(或者github,我这里使用的例子是在gitlab上)上创建git仓库 (确保授权正确,避免后 ...
- 使用 CocoaPods 对公有库开源和私有库组件
引言 年前在研究使用 CocoaPods 对 iOS 工程组件化,请教了各路大神,基本掌握了使用 CocoaPods 创建公有 Pod 库和私有 Pod 库方法.年后,打算正式将项目进行组件化重构,为 ...
- CocoaPods私有库创建
CocoaPods私有库创建 参考链接 为什么要使用私有库和私有库索引 对于个人来说,可以进行代码积累.我们在创建新项目,很多基础代码会进行复用,都会引入自己常用的代码.还有一些自定义代码,快速代码, ...
- iOS:简单创建cocoapods公共库
1. 创建一个工程 打开终端,切换到你要创建的位置的目录,我这里是/Desktop/POD cd Desktop/POD pod lib create HYPodTestOneDemo 1.What ...
- 关于CocoaPods私有库的那点事情
关于CocoaPods私有库的那点事情 私有库 组件化的基本操作 首先得安装好CocoaPods,不懂的童鞋出门右拐找百度 终端命令都是在podspec所在目录,除了pod lib create和po ...
- 手把手教你发布自己的CocoaPods开源库
本文讲的是手把手教你发布自己的CocoaPods开源库,发布自己的cocoapods开源库按照以下步骤,良心制作,包教包会!! 下面我会通过一个名为IFMMenu的项目来讲解一下整个过程. 1.写好代 ...
- 搭建CocoaPods私有库
基于git搭建CocoaPods私有库 1.创建并设置一个私有的Spec Repo. 2.创建Pod的所需要的项目工程文件,并且有可访问的项目版本控制地址. 3.创建Pod所对应的podspec文件. ...
- CocoaPods私有库配置笔记
本文转自:http://www.jianshu.com/p/4b63dfbd8be7 前情提要 公司项目一直在用CocoaPods管理第三方包,自己也想着将项目中的公用模块抽离出来独立的包.所以研究了 ...
最新文章
- 【廖雪峰Python学习笔记】错误、调试、测试
- 【Python】轻松识别文字,这款Python OCR库支持超过80种语言
- npm安装bower时报错 我已解决
- 关于解决arduino SHT1x诸多问题
- (59)逆向分析 KiSwapContext 和 SwapContext —— 线程切换核心代码
- ES6公用跑马灯抽奖组件的封装及使用
- 【2019浙江省赛 - B】Element Swapping(思维,数学)
- DFS序+线段树 hihoCoder 1381 Little Y's Tree(树的连通块的直径和)
- 深度优先搜索(DFS)和广度优先搜索(BFS)探究
- h5在微信自定义分享php,h5页面自定义微信分享
- 智能语音识别app下载-智能语音识别app安卓版下载v2.2 - 非凡软件站
- WPS打不出英文引号
- 小程序上传图片前将图片剪切成固定尺寸
- Visual Studio Code中比较不同的分支(How to compare different branches in Visual Studio Code)
- 51单片机8*8点阵,按键控制数字加拼音上下左右移动
- 从网卡中截获sql server的sql语句
- Android终端硬件通讯总结(串口通讯、Usb Com、Usb、蓝牙、Wifi)
- Linux运维之解决服务器挖矿木马问题
- 系统存储过程和函数DM8 SQL
- 弘辽科技:淘宝卖家如何制作高点击神图,看了这篇文章就够了
热门文章
- IP别名与多网卡绑定(RHEL5/RHEL6)
- 毕业设计-基于SSM实现在线考试及题库管理系统
- Linux别名的创建删除【alias】和【unalias】
- (How to) Call somatic mutations using GATK4 Mutect2
- 2019牛客暑期多校训练营(第五场)G-subsequence 1
- WebForm页面生命周期及asp.net运行机制
- 【BZOJ5102】[POI2018]Prawnicy 堆
- mybatis的实际应用
- 通过异或运算符加密解密 难度二星
- python初学--day1