git 使用 cocoapods

首先使用保证项目已经上传到git的仓库中。

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

# sudo gem install cocoapods

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

# pod trunk register [email protected] 'liuhanhao'  --verbose

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

# pod trunk me

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


git 使用 cocoapods_第1张图片

二、配置PodSpec

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

2.1 添加podspec描述文件

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

2.2 创建pod spec描述文件

# cd /Users/liuhanhao/Downloads/UIView-ZQuartz

# pod spec create UIView-ZQuartz

示例pod spec描述文件

/************************************************/

Pod::Spec.new do |s|

s.name        = "UIView-ZQuartz"

s.version      = "0.0.1"

s.summary      = "A marquee view used on iOS."

s.description  = <<-DESC

It is a marquee view used on iOS, which implement by Objective-C.

DESC

s.homepage    = "https://github.com/liuhanhao/UIView-ZQuartz"

# s.screenshots  = "www.example.com/screenshots_1.gif", "www.example.com/screenshots_2.gif"

s.license      = "MIT"

s.author      = { "刘汉浩" => "[email protected]" }

s.source      = { :git => "https://github.com/liuhanhao/UIView-ZQuartz.git", :tag => "#{s.version}" }

s.platform    = :ios, '7.0'

# s.ios.deployment_target = '5.0'

# s.osx.deployment_target = '10.7'

s.requires_arc = true

s.source_files  = 'UIView-ZQuartz/UIView-ZQuartz/Classes/*'

# s.resources = 'Assets'

# s.ios.exclude_files = 'Classes/osx'

# s.osx.exclude_files = 'Classes/ios'

# s.public_header_files = 'Classes/**/*.h'

s.frameworks = 'Foundation', 'CoreGraphics', 'UIKit'

end

/************************************************/

这里要注意一点,有时你写的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到本地源代码的根目录,执行:

# git add -A

# git commit -m "first commit for version 1.0.0"

# git push origin master

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

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

# cd /Users/liuhanhao/Downloads/UIView-ZQuartz

# git tag -a 0.0.1 -m "tag release 0.0.1"

# git push --tags

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

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

# pod trunk push UIView-ZQuartz.podspec

三、使用制作好的cocoapods

在你项目的Podfile里面加入这个第三方库的地址。

pod 'UIView-ZQuartz', :git => 'https://github.com/liuhanhao/UIView-ZQuartz.git'

就可以畅快的使用pod install了

你可能感兴趣的:(git 使用 cocoapods)