手把手教你发布自己的开源框架到CocoaPods

原创 2017年03月17日 00:21:47

移动端显示不佳,请访问我的个人博客

偶尔会发布自己的开源框架到CocoaPods上,但是每次都忘记命令行,写这篇博客的目的是为了记录下来步骤,方便以后翻阅使用

一、先将代码传到github上

这步比较简单,大致说一下:

// 创建本地仓库
git init
// 添加名称为origin的远程连接
git remote add origin '你的github项目地址'
// 将本地代码加入本地仓库里
git add .
// 提交修改到本地仓库
git commit -m '你的修改记录'
// 推送master分支的代码到名称为origin的远程仓库
git push origin master

二、给你git打上tag

打tag的目的就相当于给你的开源框架制定版本号,每个版本一个tag,下面是打tag的流程:

// 查看本地tag
git tag
// 添加本地tag 1.0.0
git tag -a 1.0.0 -m 'release 1.0.0'
// 将tag传到远程
git push origin --tags

tag的其他操作

// 删除本地tag
git tag -d 1.0.0
// 删除远程tag
git push origin -d tag 1.0.0

三、注册Trunk

pod trunk register 你的邮箱 '你的用户名' --description='你的描述'

成功的话就会受到一份邮件,点击邮件中的链接后验证一下:

pod trunk me

成功的话会返回以下类似字段:

  - Name:     WCL
  - Email:    wangchonglei93@icloud.com
  - Since:    January 10th, 21:32
  - Pods:
    - WCLImagePickerController
    - WCLShineButton
    - CRRefresh
  - Sessions:
    - January 10th, 21:32 - July 22nd, 07:38. IP: 58.132.205.59

如果你的pod是由多人维护的,你也可以添加其他维护者:

pod trunk add-owner ARAnalytics kyle@cocoapods.org

四、创建自己项目的Podspec描述文件

上传到cocoapods时主要就依赖着.podspec的描述文件来进行配置的,所以我们要先建立一个.podspec的描述文件:

// 初始化.podspec文件
pod spec create 你的项目名

初步了解.podspec文件:

Pod::Spec.new do |s|
  s.name         = "你的项目名"
  s.version      = "项目的版本"
  s.summary      = "项目的描述"
  s.homepage     = "项目的主页,一般为github地址就行"
  s.license      = "许可证:一般为 MIT"
  s.author             = { "作者名" => "你的邮箱" }
  // 支持的最低版本,比如ios 8.0
  s.platform     = :ios, "8.0"
  // 源代码地址,也就是你github上的地址
  s.source       = { :git => "你的github地址", :tag => "项目的tag" }
  // 源代码的文件路径
  s.source_files  = "WCL", "WCL/**/*.{h,m}" , "WCL/*.{swift}"
  // 资源文件路径
  s.resources     = "WCL.png", "WCL/**/*.{bundle}" , "WCL/*.{bundle}"
  // 用到的框架
  s.framework  = "UIKit"
  // 依赖的第三方库
  s.dependency "JSONKit", "~> 1.4"

编辑完podspec文件后,需要验证一下这个文件是否可用,如果有任何WARNING或者ERROR都是不可以的,它就不能被添加到Spec Repo中,不过xcode的WARNING是可以存在的,验证需要执行命令:

pod spec lint 你的podspec文件名.podspec

通过的话就验证成功,失败会告诉你错误的位置,一般很详细

五、传到CocoaPods上

pod trunk push 命令会首先验证你本地的podspec文件(是否有错误),之后会上传spec文件到trunk,最后会将你上传的podspec文件转换为需要的json文件。在工程根目录(包含有.podspec)下执行命令:

pod trunk push

没有错误的话,会提示你成功,并返回一下类似代码:

--------------------------------------------------------------------------------
 ��  Congrats

 ��  CRRefresh (1.0.0) successfully published
 ��  March 16th, 07:14
 ��  https://cocoapods.org/pods/CRRefresh
 ��  Tell your friends!
--------------------------------------------------------------------------------

以上是基本流程,如果有什么问题欢迎交流,最后谢谢大家的阅读

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wang631106979/article/details/62527363

Cocoapods: 打造本地 pod 库

项目到了一定规模, 项目的代码组织和结构显得尤为重要. 重构项目结构, 可以从分离代码开始. 代码分离, 可以把常用稳定的组件封装抽离出来. 我的做法是使用 cocoapods 来管理. 下面进入...
  • AndroidBluetooth
  • AndroidBluetooth
  • 2016-05-14 18:38:16
  • 8532

2016 最新的CocoaPods安装,无需镜像

最近换公司,用了新的点Pro,想着先装个cocoapods以备不时之需,结果就掉进坑里再也没出来,镜像路径,pod更新卡死..各种无界问题,一直在挣扎,查了无数资料,结果发现网上千篇一律,没有太好的结...
  • qq_34204754
  • qq_34204754
  • 2016-09-09 13:55:42
  • 3095

CocoaPods安装使用

  • 2016年01月05日 10:36
  • 155KB
  • 下载

如何发布自己的开源框架到CocoaPods---持续更新中

如何发布自己的开源框架到CocoaPods——在项目所在目录下执行* pod init * , 生成Podfile文件, 我们需要对其进行相应的配置。在开发过程中,经常会使用到第三框架,我们通过一个p...
  • blog_t
  • blog_t
  • 2017-03-06 09:33:10
  • 1432

详解Shell脚本实现iOS自动化编译打包提交

目录 前言Shell脚本涉及的工具 xcodebuild和xcrunaltoolfir-cliPlistBuddy 一些概念的区别具体实现 xcodebuild和xcrun准备Pl...
  • fishmai
  • fishmai
  • 2017-05-24 22:57:13
  • 1646

项目上传到cocoapods 打包framework上传到cocoapods

一.先上传项目到 github 1.登陆github 2.创建仓库 3.下载仓库到本地 (我一般都xcode的下载) 4 新建项目到你下载的目录下 5.commit push 提交到g...
  • chuan403082010
  • chuan403082010
  • 2016-07-13 17:02:22
  • 2121

在CocoaPods上制作自己的库

制作一个属于自己的CocoaPod的第三方库。
  • kaituozhe163
  • kaituozhe163
  • 2017-03-08 12:30:07
  • 466

发布自己的开源框架到CocoaPods

第一步:在github上创建CZFTool仓库第二步:自己指定的文件夹目录下使用命名:git clone  https://github.com/MacleChen/CZFTool.git   (这是...
  • yishengzhiai005
  • yishengzhiai005
  • 2017-05-23 16:40:00
  • 252

iOS---如何在CocoaPods上发布自己的项目

目前, 在iOS开发中, CocoaPods应该算是使用最为频繁的包管理工具了.
  • icetime17
  • icetime17
  • 2016-06-29 00:05:37
  • 1273
收藏助手
不良信息举报
您举报文章:手把手教你发布自己的开源框架到CocoaPods
举报原因:
原因补充:

(最多只允许输入30个字)