为了让读者一目了然,现在就从新建工程到最后提交podspec,简单粗暴的讲一通。
Cocoapods不用解释太多,一句话...它是目前iOS开发中最广为使用的第三方库依赖管理工具。

下面开始讲创建pod的过程:

第一步:创建工程
使用pod lib create命令创建新的工程

pod lib create MyLib
这个命令执行过程中,会问东问西,然后给你生成一个新的工程,你的代码可以放到里面。
注意:这个命令执行的最后一步会执行pod install,如果太慢或被墙,你可以中断掉它,然后自行执行

pod install --verbose --no-repo-update
第二步:编写podSpec文件
看你的工程里面有一个MyLib.podspec文件,把它修改一下,然后执行

pod lib lint MyLib.podspec
这个命令检查你的podspec是不是有问题,如果没有问题就会提示passed validation,有问题会指出来。

第三步:搞你的代码
请原谅我用'搞'这个词...就是把你想管理起来或者分享的代码搞到这个工程里面来,写个Example,让他跑起来没有问题

第四步:打tag和验证podspec
打tag并push

git tag 1.0.0
git push origin 1.0.1

push完tag以后,还需要再验证一次podspec,注意你的tag的版本号要和podspec一致。
pod spec lint MyLib.podspec

第五步:Push到Spec Repository
验证都没问题,就可以push了,但是等一等。。。如果你是第一次push的话,还要先创建一个session:
pod trunk register your@email.com 'Your Name' --description='macbook air'

然后查看邮箱,确认邮件就ok了。下面就push:
pod trunk push MyLib.podspec

这一步搞完,就大功告成了。最后你pod update一下,然后你的代码就可以在pod上面搜索到了
pod search MyLib

最后你就可以叫其他人来用你的pod了:
pod 'MyLib', '~>1.0'

第六步:FQ问题
cocoapods的spec 如果要更新的话,经常会被墙,可以执行以下命令,把地址指向国内镜像即可:

pod repo remove master
pod repo add master https://gitcafe.com/akuandev/Specs.git  
// or http://git.oschina.net/akuandev/Specs.git
pod repo update

结束语:
今后如果要更新Pod版本,也很简单,基本上就是打tag+push,也就是重复上面说的第4步和第5步。

如何将你牛逼的iOS代码分享到CocoaPod(转)的更多相关文章

  1. 这样Review代码牛逼啦!

    这样Review代码牛逼啦! 一个对项目负责的团队代码质量检查是必不可少的,有条件的团队经常有代码review习惯,这样可以使技术团队共同进步,但是一个庞大的工程做代码review其实是很麻烦的,所以 ...

  2. 为什么我会认为SAP是世界上最好用最牛逼的ERP系统,没有之一?

    为什么我认为SAP是世界上最好用最牛逼的ERP系统,没有之一?玩过QAD.Tiptop.用友等产品,深深觉得SAP是贵的有道理! 一套好的ERP系统,不仅能够最大程度承接适配企业的管理和业务流程,在技 ...

  3. 我喜欢ASP.NET的MVC因为它牛逼的9大理由(转载)

    我很早就关注ASP.NET的mvc的,因为最开始是学了Java的MVC,由于工作的原因一直在做.Net开发,最近的几个新项目我采用了MVC做了,我个一直都非常喜欢.Net的MVC.我们为什么使用MVC ...

  4. 最牛逼android上的图表库MpChart(三) 条形图

    最牛逼android上的图表库MpChart三 条形图 BarChart条形图介绍 BarChart条形图实例 BarChart效果 最牛逼android上的图表库MpChart(三) 条形图 最近工 ...

  5. 最牛逼android上的图表库MpChart(二) 折线图

    最牛逼android上的图表库MpChart二 折线图 MpChart折线图介绍 MpChart折线图实例 MpChart效果 最牛逼android上的图表库MpChart(二) 折线图 最近工作中, ...

  6. 最牛逼android上的图表库MpChart(一) 介绍篇

    最牛逼android上的图表库MpChart一 介绍篇 MpChart优点 MpChart是什么 MpChart支持哪些图表 MpChart效果如何 最牛逼android上的图表库MpChart(一) ...

  7. js深入研究之牛逼的类封装设计

    <script type="text/javascript"> var Book = function(newIsbn, newTitle, newAuthor) { ...

  8. Animate.css 一款牛逼的css3动画库

    Animate.css是一款很牛逼的,跨浏览器的css3动画库,使用方法也很简单只要引入一个animate.min.css就可以了, 简单使用 1 首先引入 animate的 css 文件样式 cdn ...

  9. Serializable 都这么牛逼了,Parcelable 还要你何用?

    一些闲聊 距离上一篇文章似乎又是很久了,看起来也没有很多反馈,催更就更不用说了.哈哈,放弃了. 话说最近公司在招聘一批至少 5 年开发经验的 Android 开发工程师,我也是忙开了花,激动得不行呀. ...

随机推荐

  1. php5.5以上的版本 开启curl

    对于php5.5以上的版本开启方法,需要libeay32.dll.ssleay32.dll.libssh2.dll三个文件拷备到C:\Windows目录下,php.ini中 扩展开启,重启apache ...

  2. StrPCopy与StrPas功能正好相反,作用是与C语言字符串和Delphi的String相互转化

    StrPCopy = Copies an AnsiString (long string) to a null-terminated string.function StrPCopy(Dest: PA ...

  3. MongoDB 分片操作

    添加分片 use admin //添加分片节点,每个分片都是一个副本集[allowLocal:true仅仅开发时才将分片配置到本地,生产时不能这样] db.runCommand({addshard:& ...

  4. (续)线性表之双向链表(C语言实现)

    在前文实现单向链表的基本操作下,本文实现双向链表的基本操作. 双向链表与单链表差异,是双向链表结点中有前向指针和后向指针.所以在插入和删除新结点元素时候不见要考虑后向指针还要考虑前向指针. 以下是双向 ...

  5. C语言运算符的优先级

    熟悉C语言的同学都知道,C语言众多的运算符及繁琐难记的优先级总是搞得我们这些C初学者头大.那么本文就 对C语言中所有的运算符进行汇总,并对其优先级进行一定的介绍. 这里虽然对所有C运算符的优先级进行了 ...

  6. MediaInfo使用简介(新版本支持HEVC)

    MediaInfo 用来分析视频和音频文件的编码和内容信息,是一款是自由软件 (免费使用.免费获得源代码).他除了提供DLL之外,本身也提供GUI工具用于查看视频信息.我使用中发现,新版本的Media ...

  7. C#字符串处理 及字符串格式化

    本文来自:http://www.cnblogs.com/xuerongli/archive/2013/03/23/2976669.html string字符串是char的集合,而char是Unicod ...

  8. Cocos2d-x优化中多线程并发訪问

    多线程并发訪问在Cocos2d-x引擎中用的不是非常多,这主要是由于中整个结构设计没有採用多线程. 源自于Objective-C的Ref对象,须要使用AutoreleasePool进行内存管理,Aut ...

  9. Appium Android Bootstrap控制源代码的分析AndroidElement

    通过上一篇文章中<Appium Android Bootstrap源代码分析之简单介绍>我们对bootstrap的定义以及其在appium和uiautomator处于一个什么样的位置有了一 ...

  10. 关于Oracle数据库字符集的选择

    如果数据库只在中国地区使用,数据库字符集选择ZHS16GBK或者常用中文字符集,如果不确定,就推荐使用AL32UTF8 国家字符集就选择: AL16UTF16 字符集一旦设定,不允许修改,修改可能出现 ...