为了让读者一目了然,现在就从新建工程到最后提交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. mvc of js

    http://alexatnet.com/articles/model-view-controller-mvc-javascript The article demonstrates how to a ...

  2. index seek与index scan

    原文地址:http://blog.csdn.net/pumaadamsjack/article/details/6597357 低效Index Scan(索引扫描):就全扫描索引(包括根页,中间页和叶 ...

  3. [置顶] Ajax核心--XMLHttpRequest对象

    XMLHttpRequest 对象是AJAX功能的核心,学习XMLHttpRequest对象就先从创建XMLHttpRequest 对象开始,了解在不同的浏览器中创建XMLHttpRequest 对象 ...

  4. hdu - 4709 - Herding

    题意:给出N个点的坐标,从中取些点来组成一个多边形,求这个多边形的最小面积,组不成多边形的输出"Impossible"(测试组数 T <= 25, 1 <= N < ...

  5. oracle优化思考-双刃剑

    oracle优化是一个双刃剑,特别注意这把剑用的场合:系统规划OLTP or OLAP 优化1:索引 在DML操作时.必须维护索引.假设大量的DML操作,想想看,IO是不是老高了? 索引长处:在非常多 ...

  6. HTML5 Web Workers来加速您的移动Web应用

    一直以来,Web 应用程序被局限在一个单线程世界中.这的确限制了开发人员在他们的代码中的作为,因为任何太复杂的东西都存在冻结应用程序 UI 的风险.通过将多线程引入 Web 应用程… 在本文中,您将使 ...

  7. MySQL之终端(Terminal)管理数据库、数据表、数据的基本操作(转)

    MySQL有很多的可视化管理工具,比如“mysql-workbench”和“sequel-pro-”. 现在我写MySQL的终端命令操作的文章,是想强化一下自己对于MySQL的理解,总会比使用图形化的 ...

  8. struts 2 debug标签隐藏不显示

    struts2 的标签debug在页面中应用,并且struts的配置文件中也设置为开发模式,但是这个标签却被隐藏了,究其原因,是因为页面中body元素生命了class,其样式覆盖了原来的样式. 比如: ...

  9. 读书笔记-实用单元测试(英文版) Pragmatic Unit Testing in C# with NUnit

    读书笔记-实用单元测试(英文版) Pragmatic Unit Testing in C# with NUnit Author: Andrew Hunt ,David Thomas with Matt ...

  10. oracle 定义数据完整性

    1. 定义主键约束 1.1 在创建表时定义主键约束 create table student(name varchar2(8),studentid varchar2(10) primary key,s ...