- 前言:2014年5月20日,CocoaPods不再接受向CocoaPods/Specs的pull request,官方的說法是為了安全考慮,防止每個人的pod被其他人修改,于是CocoaPods團(tuán)隊(duì)開發(fā)了trunk服務(wù)。
- Trunk官方的介紹鏈接:http://blog.cocoapods.org/CocoaPods-Trunk/#transition
1.trunk注冊
1.1,可以先使用pod trunk me命令,查看自己的注冊信息。

1.png
1.2,若沒有注冊,使用下面命令進(jìn)行注冊。
pod trunk register 610112090@qq.com 'nishenlei' --description='17款 13寸 macbook pro' --verbose
1.3,注冊后CocoaPods會給你的郵箱發(fā)送驗(yàn)證鏈接,點(diǎn)擊后就注冊成功了,可以用pod trunk me命令查看自己的注冊信息:

2.png
上面是我的注冊信息,CocoaPods不通過密碼來驗(yàn)證用戶,而是通過一個session token。
2.pod部署(以SLGenericsNineView為例)
1.新建工程
在GitHub上新建項(xiàng)目工程,并打上對應(yīng)的tag(如:1.0)
與下面的.podspec文件中的s.version一致。
2.新建SLGenericsNineView.podspec文件
podspec官方說明:http://docs.cocoapods.org/specification.html
#
# Be sure to run `pod spec lint SLGenericsNineView.podspec' to ensure this is a
# valid spec and to remove all comments including this before submitting the spec.
#
# To learn more about Podspec attributes see http://docs.cocoapods.org/specification.html
# To see working Podspecs in the CocoaPods repo see https://github.com/CocoaPods/Specs/
#
Pod::Spec.new do |s|
s.name = "SLGenericsNineView"
s.version = "1.0"
s.summary = "泛型九宮格布局"
s.description = <<-DESC
通過泛型的思想,對九宮格布局的代碼進(jìn)行封裝,更簡單的九宮格布局控件。
DESC
# 首頁(我的簡書)
s.homepage = "https://github.com/slni/SLGenericsNineView.git"
# 源代碼位置
s.source = { :git => "https://github.com/slni/SLGenericsNineView.git", :tag => "#{s.version}" }
s.source_files = "SLGenericsNineView/SLGenericsNineView/Source/*.{swift,h,m}"
#s.source_files = "SLGenericsNineView/**/*.{swift,h,m}"
s.swift_version = "4.0"
# 許可,一般MIT
s.license = "MIT"
s.author = { "slni" => "610112090@qq.com" }
s.platform = :ios, "8.0"
#s.ios.deployment_target = '8.0'
#s.osx.deployment_target = '10.10'
#s.tvos.deployment_target = '9.0'
#s.watchos.deployment_target = '2.0'
# 依賴三方的框架
# s.dependency 'AFNetworking', '~> 1.0'
# s.dependency 'Alamofire'
# s.dependency 'Moya'
# s.dependency 'SwiftyJSON'
# s.dependency 'PromiseKit'
# s.dependency 'SnapKit'
# 依賴系統(tǒng)的框架
# s.ios.framework = 'CFNetwork'
end
3.驗(yàn)證SLGenericsNineView.podspec文件
使用pod lib lint驗(yàn)證創(chuàng)建的SLGenericsNineView.podspec文件是否合格規(guī)范。

3.png
4.上傳SLGenericsNineView.podspec文件
使用pod trunk push SLGenericsNineView.podspec命令上傳到trunk。

4.png
3.使用pod集成
這個時(shí)候,pod制作已經(jīng)成功了?。。。?/strong>
3.1可通過pod search SLGenericsNineView搜索剛才制作成功的SLGenericsNineView。

5.png
如果,制作成功了,發(fā)現(xiàn)search不到,可先執(zhí)行下pod setup,再進(jìn)行搜索。