1.升级Ruby环境

sudo gem update --system

如果Ruby没有安装,请参考 如何在Mac OS X上安装 Ruby运行环境

2.安装CocoaPods时我们要访问cocoapods.org,用淘宝的RubyGems镜像来代替官方版本,执行以下命令:

$ gem sources --remove https://rubygems.org/
//等有反应之后再敲入以下命令
$ gem sources -a https://ruby.taobao.org/

为了验证你的Ruby镜像是并且仅是taobao,可以用以下命令查看:

$ gem sources -l

只有在终端中出现下面文字才表明你上面的命令是成功的:

*** CURRENT SOURCES ***

http://ruby.taobao.org/

上面的命令,有时试了会没有效,请参考淘宝网的https://ruby.taobao.org

$ gem sources --add https://ruby.taobao.org/ --remove https://rubygems.org/
$ gem sources -l
*** CURRENT SOURCES *** https://ruby.taobao.org
# 请确保只有 ruby.taobao.org
$ gem install rails

3.安装Cocoapods,在终端输入命令(10.11以上,请跳过该步骤,看第4点)

$ sudo gem install cocoapods

等上十几秒钟,CocoaPods就可以在你本地下载并且安装好了,不再需要其他设置。

4.10.11以上,上面的命令是不生效了,因为10.11把cocoapods直接干掉了(这里可能会报错, Ruby的版本太低了, 必须是2.2.0以上版本, 不然

sudo gem update --system 都会报错不然)
sudo gem install -n /usr/local/bin cocoapods
再加一句,完美解决
sudo xcode-select --switch /Applications/Xcode.app

在终端中输入如下命令来完成安装:

//将 CocoaPods Specs repository复制到你电脑上~/.cocoapods目录下
pod setup

它需要一点时间来完成,你等就是了
如果安装失败 ~/.cocoapods 里面是空的,就需要重新setup
命令如下:

pod repo remove master
pod setup

完毕之后这个文件夹大概有 将近200M,需要花费比较多时间,请耐心等待。
到这里你已经成功安装了CocoaPods

Cocoapods使用

1.使用search命令搜索类库名

$ pod search AFNetworking

出现Setting up CocoaPods master repo,说明Cocoapods在将它的信息下载到 ~/.cocoapods里;

cd  到该目录里,用du -sh *命令来查看文件大小,每隔几分钟查看一次,这个目录最终大小是400多M左右,就是完成了

得到结果如下图:

从这个图上,我们看到AFN有好多版本,最新的版本是2.6.0.

2.打开xcode,新建一个工程,工程名为CocoapodsSample。

使用命令cd,cd后面跟的是工程目录名,可以直接拉进来,

回车后,输入命令创建Podfile文件

$ touch Podfile

我们可以看到,在根目录下,多了一个Podfile文件

3.使用vim编辑podfile文件,使用命令

$ vim Podfile

然后在Podfile文件中输入以下文字:

platform :ios, '7.0'

target "testCocoa" do

pod 'MBProgressHUD', '~> 0.8'

pod 'AFNetworking', '~> 3.0'

end

这两句文字的意思是,当前AFNetworking支持的iOS最高版本是iOS 7.0, 要下载的AFNetworking版本是2.5.0。

testCocoa是你项目的名字

在编辑完后按 esc,然后按":",这个时候输入wq保存退出。

这个时候打开Podfile文件就会看到里面添加了刚才在终端输入的两行语句,如下图

4.这时候,你就可以利用CocoPods下载AFNetworking类库了。还是在终端中的当前项目目录下,运行以下命令:

$ pod install 

安装成功后,如下图:

这个时候,会看到多了一个.xcworkspace工程,以后打开项目就用 CocoapodsSample.xcworkspace 打开,而不是之前的.xcodeproj文件。

5.打开 CocoapodsSample.xcworkspace 工程,你会惊喜地发现,AFNetwoking已经成功导入项目了。

现在,你就可以开始使用AFNetworking.h啦。可以稍微测试一下,在你的项目任意代码文件中输入:

#import <AFNetworking.h>
或者
#import "AFNetworking.h"

然后编译,看看是否出错。如果你严格按照小编上述的步骤来,是不可能出错的啦。

另:

如果有一些包已经存在了,或者我们更改了Podfile里面的版本,可以使用以下命令更新

$ pod update

关于Podfile文件编辑时,第三方库版本号的各种写法:

pod ‘AFNetworking’      //不显式指定依赖库版本,表示每次都获取最新版本
pod ‘AFNetworking’, ‘2.0’ //只使用2.0版本
pod ‘AFNetworking’, ‘>2.0′ //使用高于2.0的版本
pod ‘AFNetworking’, ‘>=2.0′ //使用大于或等于2.0的版本
pod ‘AFNetworking’, ‘<2.0′ //使用小于2.0的版本
pod ‘AFNetworking’, ‘<=2.0′ //使用小于或等于2.0的版本
pod ‘AFNetworking’, ‘~>0.1.2′ //使用大于等于0.1.2但小于0.2的版本,相当于>=0.1.2并且<0.2.0
pod ‘AFNetworking’, ‘~>0.1′ //使用大于等于0.1但小于1.0的版本
pod ‘AFNetworking’, ‘~>0′ //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

cocoaPods的上传

一、注册trunk

在注册trunk之前,我们需要确认当前的CocoaPods版本是否足够新。trunk需要pod在0.33及以上版本,如果你不满足要求,打开Terminal使用ruby的gem命令更新pod:

1
sudo gem install cocoapods

更新结束后,我们开始注册trunk:

1
pod trunk register zilin_weng@163.com 'weng1250'  --verbose

邮箱以及用户名请对号入座。用户名我使用的是Github上的用户名。--verbose参数是为了便于输出注册过程中的调试信息。执行上面的语句后,你的邮箱将会受到一封带有验证链接的邮件,如果没有请去垃圾箱找找,有可能被屏蔽了。点击邮件的链接就完成了trunk注册流程。使用下面的命令可以向trunk服务器查询自己的注册信息:

1
pod trunk me

输出如下信息就表示你注册成功,可以进行下面的流程:

二、配置PodSpec

在这一部分中我们需要做两件事:1、为你的代码添加podspec描述文件;2、将podspec文件通过trunk推送给CocoaPods服务器

2.1 添加podspec描述文件

这一步与更换trunk方式前的操作完全一样。什么是podspec描述文件呢?简单地讲就是让CocoaPods搜索引擎知道你的代码的作者、版本号、源代码地址、依赖库等信息的文件。任何支持CocoaPods的开源代码都必须有podspec文件。CocoaPods在github中用一个repo来管理所有支持CocoaPods的开源代码:https://github.com/CocoaPods/Specs

那如何编写podspec文件呢?官方提供了一个模板并附有非常详细的注释说明。关于podspec文件的编写本文不打算详细讲。强烈建议你看这篇文章的第三节部分,第四第五节不必看因为已经过时了。

建议直接拿一些成熟的开源库的podspec改就行,生成的模板里有很多冗余的属性。

这里要注意一点,有时你写的podspec文件在后面push的时候会提示"The `source_files` pattern did not match any file."错误,但是能用pod lib lint命令做本地校验时又是OK的。为什么呢?上述错误的意思是pod在网络上根据你指定的路径找不到相关文件。这时候你要核对网上git仓库的路径与source_files(其他_files字段同理)要对应。*_files字段指的是网络git上的路径

2.2 通过trunk推送podspec文件

现在我们已经有了自己的podspec文件,但是在推送podspec文件之前你需要确认以下几点:

1、确保你的源码已经push到Github上。如果还没push源代码,可以用Terminal cd到本地源代码的根目录,执行:

1
2
3
git add -A
git commit -m "first commit for version 1.0.0"
git push origin master

当然,你也可以使用SourceTree等GUI形式的Git客户端进行代码的推送操作。

2、确保你所push的代码已经打上"version tag",也就是给源代码打上版本号标签:

1
2
git tag '1.0.0' 
git push --tags  

只有确保了以上两点,CocoaPods才能更准确地找到你的repo。

现在我们开始通过trunk上传你的podspec文件。先cd到podspec文件所在目录,执行:

1
pod trunk push WZLBadge.podspec

文件名自行对号入座。上面的代码做了三件事:(可以对着文章开头的流程图看)

1、验证你的podspec文件是否合法。在trunk方式之前我们一般用“pod lib lint”命令进行验证。

2、上传podspec文件到trunk服务器(其实最终也会自动添加到https://github.com/CocoaPods/Specs中,只是使用trunk方式省去了以前先fork在pull request的繁琐操作)

3、将你上传的podspec文件转成json格式文件

执行上面的push操作,就相当于你把你的源代码提交给CocoaPods团队审核了,一般需要一到两个工作日可以审核结束。这种心情有点像提交App给Apple审核,哈哈。

*更正:现在CocoaPods审核只需要几秒钟或者几分钟就可以完成了。

1、s.source_files 写错了

s.source_files = "MBProgressHUD+YF/Tool/**/*.{h,m}"

2、一定要打版本

git tag '1.0.0'

git push --tags

同时,记得  s.version      = "1.0.0" 这里的两个版本要一致

3、pod lib lint 验证的时候有警告 --allow-warnings 了以后 , push的时候也要 在结尾加上, 不然还是通过不了

4、上传成功后,搜索不到, 记得 pod setup , 如果依然搜索不到,

终端输入rm ~/Library/Caches/CocoaPods/search_index.json

输出:Creating search index for spec repo 'master'.. Done!,稍等片刻就会出现

CocoaPods安装使用及上传的更多相关文章

  1. 安装配置BITS上传服务

    IIS 6.0和IIS 7.0 支持安装BITS上传组件. 下面以IIS7.0为例安装配置bits上传服务. 1.安装 首先确定服务器已经按装IIS服务.依次打开服务管理器->功能->添加 ...

  2. Windows 和 Mac 系统下安装git 并上传,修改项目

    首先在MAC上怎么操作. 在gitHub创立一个账户,在创立一个项目,这就不用我说了对吧. 创建完之后是这样的: 接下来,我们打开https://brew.sh 这是下载homebrew的网站,hom ...

  3. linux(centos)下安装git并上传代码

    cat /etc/redhat-release   查看系统版本信息 >>CentOS Linux release 7.4.1708 (Core) 背景:我已经注册了github账号,之前 ...

  4. CentOS安装GIt、上传项目到git仓库

    上传项目 登录服务器后安装git yum install git 新建文件夹(仓库) mkdir *.git 初始化仓库 git init --bare *.git 在本地初始化仓库 git init ...

  5. Linux下vsftpd的安装,Java上传文件实现。

    首先我们需要查看是否已经安装vsftpd,输入命令 :vsftpd  -v.如果出现以下信息,那么就说明已经安装vsftpd 如果没有安装,那么输入命令   : yum  install vsftpd ...

  6. CentOS安装Git,并上传、下载

    转自:https://blog.csdn.net/u014066037/article/details/70224780 Git 一.安装Git $ yum install git 二. 生成SSH密 ...

  7. linux(centos)下安装git并上传代码些许步骤(亲自验证过的步骤)

     曾经听说了好多次github,但直到近期才第一次学习使用github来托管自己在linux下的代码! 说实话.我自己在使用的时候从网上查了好多教程.但总认为难以掌握(步骤过于繁琐),自己操作的时候还 ...

  8. win10下git与gitlab安装与文件上传

    目前了解到的版本管理工具有三种:gitlab  GitHub 和 码云 个人感觉 gitlab 在公司用的较多 便于协同办公   GitHub各种资源有很多,适合个人使用   码云是中文版 便于入门 ...

  9. git安装和项目上传到GitHub

    重装系统后,Git安装也要来重来 下载 国内下载地址:https://npm.taobao.org/mirrors/git-for-windows 安装忽略 生成密钥 输入然后都是下一步,生成密钥,生 ...

随机推荐

  1. notes:spm多重比较校正

    SPM做完统计后,statistical table中的FDRc实际上是在该p-uncorrected下,可以令FDR-correcred p<=0.05的最小cluster中的voxel数目: ...

  2. 将数据库备份到AZURE blob storage

    1创建一个Storage Account 1)点击Browse->Storage accounts 2) 填写Storage account,请记住这个名字,之后创建credential需要用到 ...

  3. NOI2018准备 Day10

    效率低低低低低非常低!!!!!!!!!!!!!!!!!!!!!!! noi3.3 布尔表达式 做了2个晚上做不出来... 不过今晚上A了一道很水的找规律题

  4. Oracle中使用Entity Framework 6.x Code-First方式开发

    去年写过一篇EF的简单学习笔记,当时EF还不支持Oracle的Code-First开发模式,今天无意又看了下Oracle官网,发现EF6.X已经支持了,并且给出了二篇教程(英文版): 1.Using ...

  5. QT5 动态链接库的创建和使用

    记录一下QT5 动态链接库的创建和使用 在文章的最后有完成的代码供下载 1.创建动态链接库 先新建一个库项目 选择chose进入下一下页面,类型选择共享库,输入一个名称:我输入的是sld 再点击下一步 ...

  6. Bootstrap系列 -- 2. 标题

    一. Bootstrap标题 在Bootstrap中使用标题和Html本身没有太大的区别使用h1-h6, 而Bootstrap只是默认修改了H1-h6的样式,网上找到如下资料参考 二. Bootstr ...

  7. exgcd,求乘法逆元

    procedure exgcd(a,b:int64); var t:longint; begin then begin x:=;y:=; exit; end else exgcd(b,a mod b) ...

  8. Xen虚拟化基本原理详解

    标签:虚拟化 xen 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://wangzan18.blog.51cto.com/80210 ...

  9. Windows系统防火墙用法

    1.按下“Win+X”组合键呼出系统快捷菜单,点击打开“控制面板”: 2.将“查看方式”修改为[大图标],然后点击“Windows 防火墙”: 3.在防火墙窗口左侧点击“高级设置”:(若防火墙未开启, ...

  10. JPEG格式

    Jpg文件格式[参考] 微处理机中的存放顺序有正序(big endian)和逆序(little endian)之分.正序存放就是高字节存放在前低字节在后,而逆序存放就是低字节在前高字节在后.例如,十六 ...