首先更新了用trunk以後,CocoaPods 須要0.33版本以上的,用 pod --version 查看,若是版本低,須要更新pod 參考guides.cocoapods.org/making/gett…html
$ pod trunk register 郵箱 '用戶名' --description='電腦描述'
複製代碼
點擊郵件的連接就完成了trunk註冊流程。ios
cd到項目根目錄git
若是未標記tag,驗證的時候會 fatal: Remote branch 0.0.1 not found in upstream origin
github
$ git tag '0.0.1'
$ git push --tags
複製代碼
$ pod spec create AdAlertView
複製代碼
這時候本地就生成一個AdAlertView.podspec文件json
刪除沒必要要的註釋(這裏只簡單介紹基本用法,因此只用到一部分必須得字段 更多字段請移步http://guides.cocoapods.org/syntax/podspec.html
) 編輯的時候會報以下錯誤,根據提示修改便可 緩存
參照:bash
s.name = "verifyNumberCode"
s.version = "0.0.1"
s.summary = "A short description of verifyNumberCode."
s.description = "實現短信驗證碼驗證"
s.homepage = "https://github.com/IT-iOS-xie/verifyNumberCode.git"
s.license = "MIT"
s.license = { :type => "MIT", :file => "FILE_LICENSE" }
s.author = { "xie" => "*********@qq.com" }
s.social_media_url = "http://twitter.com/xie"
s.platform = :ios
s.source = { :git => "https://github.com/IT-iOS-xie/verifyNumberCode.git", :tag => "0.0.1" }
s.source_files = "Classes", "verifyNumberCode/*.{h,m}"
s.exclude_files = "Classes/Exclude"
s.public_header_files = "verifyNumberCode/*.h"
s.requires_arc = true
複製代碼
podSpec
中spec
的全稱是Specification
,說明書的意思。顧名思義,這是用來描述你這個私有pod的說明信息的。 podSpec
是cocoapods
的一種文件格式,有一套本身的語法,咱們能夠到cocoapods官網進行詳細瞭解(guides.cocoapods.org/syntax/pods…)。框架
建立podSpec
很簡單,只要建立一個以.podSpec
爲後綴的文件便可,或者直接拷貝別人的進行修改也能夠。編輯器
它的建立命令是:$pod spec create TestFile
ide
podspec
文件的經常使用配置字段介紹
框架名字:框架名字必定要寫對,pod search
"框架名"就是搜的這個
s.name= "yoowei"
複製代碼
框架版本號
s.version= "1.0.0"
複製代碼
框架簡介
s.summary= "yoowei框架"
複製代碼
框架的主頁
s.homepage= "https://git.oschina.net/yoowei"
複製代碼
框架遵照的開源協議
s.license = 'MIT'
複製代碼
框架的做者
s.author = { "yoowei" => "yoowei@126.com" }
複製代碼
框架的資源路徑:路徑能夠指向遠端代碼庫,也能夠指向本地項目,例如: 1.指向遠端代碼庫: { :git => "git@git.oschina.net:yoowei/yoowei.git", :tag => "1.0.0" }
2.指向本地項目: { :path => 'yoowei', }
s.source = { :git => "git@git.oschina.net:yoowei/yoowei.git", :tag => "1.0.0" }
複製代碼
框架被其餘工程引入時,會導入yoowei目錄下的.h和.m文件
s.source_files = 'yoowei/**/*.{h,m}'
複製代碼
框架被其餘工程引入時,會導入yoowei/resource
目錄下的資源文件
s.resources = {
'yoowei' => ['yoowei/resource/**/*.{storyboard,xcassets,xib,png']
}
複製代碼
框架依賴的framework
s.framework = 'CoreData'
複製代碼
框架依賴的其餘第三方庫
s.dependency 'MagicalRecord', :git => 'https://github.com/iiiyu/MagicalRecord.git', :tag => 'sumiGridDiary2.1'
s.dependency 'MBProgressHUD'
複製代碼
框架是否須要支持ARC
s.requires_arc = true
複製代碼
框架支持的最低平臺版本
s.platform = :ios, '7.0'
複製代碼
框架公開的頭文件
s.public_header_files = 'yoowei/**/*.h'
複製代碼
編輯完podspec文件後須要驗證一下這個文件是否可用podspec文件不容許有任何的Warning或者Error 執行命令
$ pod lib lint
複製代碼
有事會出現部分警高
忽略警高$ pod lib lint --allow-warnings
複製代碼
push
podspec
文件$ pod trunk push AdAlertView.podspec
複製代碼
忽略警告
$ pod trunk push AdAlertView.podspec --allow-warnings
複製代碼
若是此時報下面的錯誤,沒有設置tag
trunk成功咱們如今就可使用pod search adalertview
[!] Unable to find a pod with name, author, summary, or description matching
adalertview`` 1.Finder前往資源庫去刪除緩存中的
search_index.json
(xie修改爲你本身的)
/Users/xie/Library/Caches/CocoaPods
刪除
search_index.json
或執行
rm ~/Library/Caches/CocoaPods/search_index.json
複製代碼
而後再輸入pod search
時會從新建立這個search_index.json
有時候發佈完可能須要等一段時間才能搜索到。