創(chuàng)建GitHub項目
創(chuàng)建GitHub倉庫
使用GitHub賬戶新建庫毡们,勾選下面許可證選項
clone到本地
創(chuàng)建完后clone到本地窄潭,在clone下來的文件里面新建工程春宣,自己的組件放到單獨的文件夾。
也可以在已有的工程根目錄下創(chuàng)建許可證文件(LICENSE)嫉你。
提交項目到GitHub
確保demo沒問題后提交到GitHub
$ git push origin master
發(fā)布到CocoaPods
注冊trunk
$ pod trunk register leap@example.com 'leap’ #注冊月帝,會發(fā)帶驗證鏈接的郵件到郵箱地址,名稱無法修改
$ pod trunk me #可查詢注冊信息幽污。
命令執(zhí)行完后郵箱會收到帶有驗證鏈接的郵件嚷辅,打開鏈接就能完成trunk注冊流程。
生成podspec文件
$ pod spec create 組件名
會在當(dāng)前目錄下生成.podspec文件距误,里面有非常多的注釋簸搞,大部分都是無用的。建議刪除內(nèi)容准潭,直接使用其它成功提交的podspec文件修改趁俊。
Pod::Spec.new do |s|
s.name = "LPSwipeNavigationController"
s.version = "1.0.1"
s.summary = "ARC and GCD Compatible LPSwipeNavigationController Class for iOS"
s.license = "MIT"
s.homepage = "https://github.com/leapCoding/LPSwipeNavigationController"
s.author = { "LeapDev" => "lpdevstore@163.com" }
s.platform = :ios, "7.0"
s.source = { :git => "https://github.com/leapCoding/LPSwipeNavigationController.git", :tag => "#{s.version}" }
s.source_files = 'LPSwipeNavigationController.h', 'LPSwipeNavigationController.m'
end
接下來講解一下每行代碼的含義
s.name 名稱
pod search 搜索的關(guān)鍵詞,注意這里一定要和.podspec的名稱一樣,否則報錯
s.version 版本號
s.ios.deployment_target:支持的pod最低版本
s.summary: 簡介
s.homepage:項目主頁地址
s.license:許可證
s.author:作者
s.social_media_url:社交網(wǎng)址,這里我寫的微博默認(rèn)是Twitter,如果你寫Twitter的話,你的podspec發(fā)布成功后會@你
s.source:項目的地址
s.source_files:需要包含的源文件
s.resources: 資源文件
s.requires_arc: 是否支持ARC
s.dependency:依賴庫,不能依賴未發(fā)布的庫
s.license說明
s.license= { :type => "MIT", :file => "LICENSE" }
這里建議大家這樣寫,如果寫別的會報警告,導(dǎo)致后面一直提交失敗,這里軍哥已經(jīng)跳了很多坑
source_files說明
寫法及含義建議大家寫第一種或者第二種
"LPSwipeNavigationController/*
""LPSwipeNavigationController/LPSwipeNavigationController/*.{h,m}"
"LPSwipeNavigationController/**/*.h"
“” 表示匹配所有文件
“.{h,m}” 表示匹配所有以.h和.m結(jié)尾的文件
“**” 表示匹配所有子目錄
驗證.podspec文件
// --verbose 如果驗證失敗會報錯誤信息
pod spec lint LPSwipeNavigationController.podspec --verbose
打tag
$ git tag 1.0.0 #給源代碼打版本標(biāo)簽刑然,與podspec文件中version一致即可
$ git push --tag
更新GitHub倉庫
提交修改到GitHub
發(fā)布到CocoaPods
$ pod trunk push LPSwipeNavigationController.podspec
發(fā)布成功后最后驗證一下
$ pod search LPSwipeNavigationController
到此已全部完成