一、前期準(zhǔn)備
1极谊、注冊(cè)github賬號(hào)
2蛾号、注冊(cè)cocoapods賬號(hào)
發(fā)布到cocoapods上你需要有一個(gè)pod 的賬號(hào),可以終端使用pod trunk me
來(lái)查看自己的賬號(hào)信息升筏,如果沒有賬號(hào)的話需要先注冊(cè)一下撑柔,命令如下:
pod trunk register 8*******2@qq.com "用戶名"
這時(shí)候郵箱會(huì)受到一封郵件
打開這個(gè)地址就可以驗(yàn)證成功了,此時(shí)再輸入命令
pod trunk me
就可以看到自己的賬號(hào)信息了3、創(chuàng)建SSH您访,并配置電腦和git上的SSH
1铅忿、終端輸入命令ls -al ~/.ssh
,檢查是否顯示有id_rsa.pub或者id_dsa.pub存在灵汪,如果不存在檀训,則創(chuàng)建。如下所示享言,則存在
2峻凫、創(chuàng)建SSH,終端輸入ssh-keygen -t rsa -C "8*********2@qq.com"
連續(xù)回車即可览露,也可能會(huì)讓你輸入密碼蔚晨,密碼就是你的開機(jī)密碼
3、拷貝SSH Key
終端輸入pbcopy < ~/.ssh/id_rsa.pub
4肛循、將SSH Key添加到git
點(diǎn)git頭像 -- Settings -- SSH and GPG keys -- New SSH key
二铭腕、開工
流程:
Github上創(chuàng)建存儲(chǔ)庫(kù) -- 配置SSH -- 將項(xiàng)目clone到本地 -- 將要托管的SDK放到clone下來(lái)的文件里面 -- 創(chuàng)建.podspec文件 -- 將文件上傳到git上 -- 編輯.podspec文件 -- 驗(yàn)證.podspec文件合法性 -- 更新到git -- 提交到pods
1、在Github上創(chuàng)建存儲(chǔ)庫(kù)(前提是的有一個(gè)Github賬號(hào)多糠,如果沒有就注冊(cè)一個(gè))
2累舷、將項(xiàng)目clone到本地
git clone https://github.com/Hokingtion/HJQPublicFramework.git
3、將要托管的SDK放到該項(xiàng)目中
4夹孔、創(chuàng)建podspec文件
使用終端cd到工程文件的目錄中被盈,在README.md文件所在的位置創(chuàng)建一個(gè)podspec 文件
pod spec create HJQPublicFramework
創(chuàng)建成功后文件夾會(huì)多出一個(gè).podspec文件
5析孽、將以上文件push到git上
cd 到.git倉(cāng)庫(kù)的同級(jí)目錄
git add .
git commit -m "注釋說(shuō)明comment log"
git push
git tag 0.0.1
git push --tags
成功后會(huì)在終端見到以下內(nèi)容
到git上可以看到提交的內(nèi)容
6、編輯.podspec文件,該文件主要是配置一些項(xiàng)目到Pods的參數(shù)(極為重要)
終端cd到podspec文件只怎,執(zhí)行以下命令袜瞬,打開podspec文件并編輯
vi HJQPublicFramework.podspec
7、編輯完需要驗(yàn)證.podspec文件是否合法
終端執(zhí)行命令
pod spec lint
這邊驗(yàn)證基本上是會(huì)出錯(cuò)的身堡,針對(duì)報(bào)的錯(cuò)一條一條改吧
最后檢驗(yàn)通過(guò)如下:
8邓尤、更新podspec文件到git
git add .
git commit -m "更新podspec文件"
git push
9、提交到pods
pod trunk push ./HJQPublicFramework.podspec
成功會(huì)有如下提示:
到這里贴谎,SDK已經(jīng)托管到cocoapods上了9!擅这!
接下來(lái)澈魄,到測(cè)試工程添加podfile文件
然后,在終端
pod install
配置好工程仲翎,運(yùn)行~
成功了1陨取!溯香!
三帘营、附上podspec文件:
Pod::Spec.new do |s|
s.name = "HJQPublicFramework"
s.version = "0.0.1" #切記要和Git提交的版本號(hào)一致
s.summary = "Test for HJQPublicFramework."
s.description = "隨便寫點(diǎn)什么,這里的描述必須比上面的summary長(zhǎng)逐哈,否則報(bào)警告,不行你可以試試" #這里的描述必須比上面的summary長(zhǎng)问顷,否則報(bào)警告
s.homepage = "https://github.com/Hokingtion" #填寫git主頁(yè)地址
#特別重要昂秃,這就是上面提到的新建Git項(xiàng)目的時(shí)候,初始化需要選擇的LICENSE杜窄,沒有這個(gè)提交會(huì)報(bào)錯(cuò)
s.license = { :type => "MIT", :file => "LICENSE" }
s.author = { "HJQ" => "8********2@qq.com" }
#平臺(tái)肠骆、系統(tǒng)版本必填,否則會(huì)報(bào)osx相關(guān)的警告塞耕,也是提交不了蚀腿,前面打包Framework的時(shí)候提到的重要性
s.platform = :ios, "8.0"
s.source = { :git => "https://github.com/Hokingtion/HJQPublicFramework.git", :tag => "0.0.1" }
#特別重要,這里邊的.h或者.m文件不能只是配到.framework,否則找不到扫外,報(bào)錯(cuò)
s.source_files = "Lib/WebMonitorSDK.framework/Headers/*.{h}"
#特別重要莉钙,這里必須配置,否則上傳成功筛谚,找不到.framework,只有頭文件
s.vendored_frameworks = "Lib/WebMonitorSDK.framework"
end