简介

在开发过程中,经常会使用到第三框架,我们通过一个pod install命令,很方便的就将第三方框架加到我们自己的项目中。

如果我们也想将自己写的组件或库开源出去,让别人也可以通过pod install命令安装自己的框架该怎么做呢?下面,我就教大家一步一步的将自己的pods发布到CocoaPods中。如果你现在对CocoaPods还不太了解,推荐你看一看这篇文章:CocoaPods的安装与使用

流程

、注册CocoaPods账户信息
、创建共享库文件并上传到公有仓库
、编辑.podspec文件
、打tag, 发布一个release版本
、发布自己的库描述文件podspec给cocoapods
、关于查找和使用新创建的库
、更新维护podspec

下面就创建CocoaPods公有库做一下分享:

一、在github上创建项目,复制项目的链接路径,例如:https://github.com/sunjinshuai/MYSementManager;

备注:
1、GitHub仓库的名称,不允许重名。
2、开源协议,一般都选择MIT

二、使用命令行、sourceTree或者GitHub Mac版将项目克隆到本地新建的一个文件夹中;

三、cd进入本地该文件夹,将自己之前的工程文件(demo)以及共享文件(共享库Lib)拖入其中,并创建公有仓库,例如:

pod spec create cocoaPodsName;
 
 
备注:
1、自己的工程文件(demo)以及共享文件(共享库Lib)。
2、MYSementManager.podspec创建的公有库名称。
 

Specification created at MYSementManager.podspec说明创建公有库成功。

四、使用文本编辑器或者sublime等编辑公有仓库信息(注意:引号不能搞错了,是英文格式的"",不是中文格式“”),默认选择文本编辑器。

备注:

、s.name:公有库的名称。
、s.version:公有库的版本。
、s.summary:公有库简短介绍。
、s.description:公有库详细介绍。
、s.homepage:公有库在GitHub上的地址。
、s.license:开源协议。
、s.author:作者。
、s.source:公有库在GitHub上的地址和版本号。
、s.source_files:公有库对外共享的.h和.m文件。
、s.requires_arc:是否支持ARC。

没有涉及到的字段可以去官方文档查阅。

五、编辑结束保存,并验证本地的公有仓库是否有效。

pod lib lint cocoaPodsName.podspec

六、验证有效后,然后再将本地该文件夹中所有的文件pushgithub上。

git add .
git commit -m "first commit"
git remote add origin https://github.com/sunjinshuai/test.git
git push -u origin master

使用git tag(此方法操作后再push上传一次)或者直接在github上点击release进入后创建release并给公有仓库打上tag

$ git tag -m "first release" 0.0.
$ git push --tags #推送tag到远端仓库

七、注册trunk,例如:

pod trunk register 邮箱 ‘用户名’ --description=‘描述’

注意:
邮箱为github上的登录邮箱、用户名为github上的用户名。

 
接收发送到邮箱的链接,点击进入后注册成功。
 

作者:s_在路上
链接:https://www.jianshu.com/p/c852ab73ffa0
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 

iOS之创建CocoaPods公有库教程的更多相关文章

  1. iOS:最详细的创建CocoaPods私有库教程

    一.感慨 说实话,创建这个CocoaPods私有库,我愣是搞了两个星期,创建的过程中,自己的感情波动是这样的:激情四射---->有点困惑----->极度困惑----->有点失望--- ...

  2. 从零开始创建CocoaPods私有库

    为什么要创建CocoaPods私有库? 避免重复的造轮子 节约时间,方便管理自己的代码 精益求精 创建CocoaPods私有库 1.创建私有仓库工程 执行命令pod lib create SmartB ...

  3. 制作CocoaPods公有库和私有库

    认识公有库和私有库 公有库:开源自己封装的库供别人使用,且往cocoaPods的官方Repo仓库(即CocoaPods Master Repo)中新增自己库的索引,该库索引是以*.podspec.js ...

  4. 创建Cocoapods私有库

    本文以自己在公司做的一个手势密码私有库GesturePasswordKit为例说明. 1.在gitlab(或者github,我这里使用的例子是在gitlab上)上创建git仓库 (确保授权正确,避免后 ...

  5. Mac终端的Cocoapods创建自己的私有库和公有库

    一,前言 为什么要用Cocopods 通常在开发的过程中,大多时候,我们会处理一类相同的操作,比如对于字符串String的邮箱验证,是否为空,手机号验证,或者一些UIView的动画操作,我们为了避免写 ...

  6. 创建/发布cocoapods公共库

    对于大多数iOS开发者而言,cocoapods都是一个非常便捷的第三方库引导工具,该工具可以帮助我们快速导入所需第三方库,并且进行相关配置. 本文即为描述如何发布一个第三方库,提供给所有的开发者使用. ...

  7. 工具第二天 cocoaPods 私有库的创建

    之前介绍了cocoaPods的安装与使用,今天简单谈一下 自己的私有库运用cocoaPods依赖. cd到需要做库的工程目录下 创建一个podspec文件 创建:pod spec create 名称 ...

  8. 利用cocoapods管理开源项目,支持 pod install安装整个流程记录(github公有库)

    利用cocoapods管理开源项目,支持 pod install安装整个流程记录(github公有库),完成预期的任务,大致有下面几步: 1.代码提交到github平台 2.创建.podspec 3. ...

  9. CocoaPods - 发布自己的模块(公有库、私有库)

    CocoaPods发布框架到远程公有库 1.编写代码~上传远程仓库 git init git add . git commit -m '提交到本地分支' //关联远程仓库 git remote add ...

随机推荐

  1. C++之虚函数与虚继承详解

    准备工作 1.VS2012使用命令行选项查看对象的内存布局 微软的Visual Studio提供给用户显示C++对象在内存中的布局的选项:/d1reportSingleClassLayout.使用方法 ...

  2. PHP 单引号与双引号的区别 SQL中的使用

    php单引号与双引号用法:引号嵌套方法 1.双引号内不能直接就再嵌套双引号 2.双引号与单引号互相嵌套使用 如: 双引号内直接嵌套单引号 echo "<script language= ...

  3. selenium_page_object

    最简单的pageobject github地址:https://github.com/defnngj/selenium_page_objects

  4. Thread之二:sleep、wait、yield、join

    一.回顾下概念 Java中的多线程是一种抢占式的机制而不是分时机制.线程主要有以下几种状态:新建,就绪,运行,阻塞,死亡.抢占式机制指的是有多个线程处于就绪状态,但是只有一个线程在运行.   1.sl ...

  5. MTCNN人脸检测识别笔记

    论文:Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks 论文链接:https:// ...

  6. Beyond Compare 简体版+注册码

    Beyond Compare 3.3.4.14431 官方简体版+注册码 查阅全文 ›

  7. 理解复杂的const和typedef和指针的关系

    // container.cpp : 定义控制台应用程序的入口点. //   #include "stdafx.h" #include<iostream> #inclu ...

  8. hql实现对表的某几个(部分)字段查询

    如何利用hql实现对表的部分字段查询 假如,我们有一张person表,对应实体类Person,表中有字段name,age,sex,address 哪我们如何来实现全部和部份字段的查询呢? hql的写法 ...

  9. 图数据库初探之Neo4j

    图数据库初试之Neo4j 自从进入了移动互联网时代,各种新事物出现的速度都好像坐上了宇宙飞船,几乎隔几天一个新概念.就拿数据库而言,什么Oracle.DB2.SQL Server.MySQL,这些你都 ...

  10. 洛谷 - P5429 - Fence Planning - 并查集

    https://www.luogu.org/problemnew/show/P5429 很明显是要维护整个连通块的共同性质,并查集一搞就完事了. #include<bits/stdc++.h&g ...