CocoaPods公有库的创建

1,365 阅读2分钟

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 # 是否启用ARC
  s.platform     = :ios, "8.0" #平台及支持的最低版本
  # s.frameworks   = "UIKit", "Foundation" #支持的框架
  # s.dependency "JSONKit", "~> 1.4" # 依赖库
  
  # User
  s.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上,这一步其实做了很多操作:

  1. 更新本地 pods 库 ~/.cocoaPods.repo/master
  2. 验证.podspec格式是否正确
  3. 将 .podspec 文件转成 JSON 格式
  4. 对 master 仓库 进行合并、提交.master仓库地址

成功后将会出现下列信息:

Updating spec repo `master`
Validating podspec
 -> PublicPodsDemo2 (1.0.0)

Updating spec repo `master`

三. 更新维护 当你的代码更新维护后,就需要重写发布,流程是:

  1. 更新ProjectName.podspec中的版本号
  2. 打上标签推送远程
  3. pod trunk push ProjectName.podspec 推送到pods仓库

到此,你已经掌握了创建和维护一个Cocoapods公有仓库的技能了。

参考链接:Pod命令