为了让读者一目了然,现在就从新建工程到最后提交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. FPGA的LE数与门数的关系(转)

    一般而言FPGA等效门数的计算方法有两种 一是把FPGA基本单元(如LUT+FF,ESB/BRAM)和实现相同功能的标准门阵列比较,门阵列中包含的门数即为该FPGA基本单元的等效门数,然后乘以基本单元 ...

  2. Linux下,查看网络配置(IP,Gateway,DNS)

    查看IP [root@localhost ~]# ifconfigem1       Link encap:Ethernet  HWaddr F0:1F:AF:D6:17:DD            ...

  3. NSTimer你真的会用了吗

    http://www.cnblogs.com/smileEvday/archive/2012/12/21/NSTimer.html

  4. smb相关资料

    smb相关资料 看资料就上维基 https://en.wikipedia.org/wiki/Server_Message_Block#Implementation http://www.bing.co ...

  5. Tengine笔记3:Nginx的反向代理和健康状态检查

    通常代理服务器只用于处理内部网络对Intenet的请求,客户端必须通过代理服务器把本来要发送到Web服务器上的请求通过代理服务器分发给Web服务器,Web服务器响应时再通过代理服务器把响应发给客户端: ...

  6. 格而知之2:UIView的autoresizingMask属性探究

    UIView的autoresizingMask属性,是用在当一个UIView实例的父控件的尺寸发生变化时,来自动调整UIView实例在父控件中的位置与尺寸的.autoresizingMask属性是一个 ...

  7. Parallelogram Counting(平行四边形个数,思维转化)

    1058 - Parallelogram Counting    PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit ...

  8. 最少步数(dfs + bfs +bfs优化)

    最少步数 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描述 这有一个迷宫,有0~8行和0~8列: 1,1,1,1,1,1,1,1,1 1,0,0,1,0,0,1,0,1 ...

  9. php排序算法之选择排序

    /** * 选择排序 * 不稳定排序 *工作原理: 首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾.以此类推 ...

  10. Hadoop 安装(3) JDK 的安装

    使用vsftp上传,JDK 和 Hadoop 到 Hadoop 用户目录. 安装JDK root 身份登录Slave4.Hadoop,在 /usr 下创建 "Java"文件夹,将j ...