-
寫(xiě)在前面
可能你經(jīng)常會(huì)寫(xiě)一些自用的小工具或者框架。但是,每次新建工程都要拷貝這些東西,實(shí)在會(huì)很神煩。既然有依賴(lài)庫(kù)的管理工具,那么自然要好好使用才是。
鑒于由本地鏈接github遠(yuǎn)端倉(cāng)庫(kù)并上傳代碼略繁瑣,在此舉一個(gè)簡(jiǎn)單點(diǎn)的例子,供參考。
-
前提條件
github 賬號(hào) (沒(méi)有賬號(hào)的先去自己申請(qǐng)一下)
梯子 (實(shí)在不知道怎么弄梯子的,去github搜官方的Lantern下載下來(lái)用)
iTerm (好用的終端)
-
在github上新建一個(gè)庫(kù)
一定要注意 .gitignore
和 license
的選擇。不懂的,按照?qǐng)D中的選擇來(lái)即可。點(diǎn)擊 Create repository
即可完成創(chuàng)建。
然后,創(chuàng)建一個(gè) README
文件。(此文件是為了后續(xù)寫(xiě)一些使用、介紹之類(lèi)的具體文檔)
-
打開(kāi)
iTerm
或者Mac自帶終端
將代碼克隆到本地
cd Desktop
git clone 你的github倉(cāng)庫(kù)地址
-
使用
trunk
新建pod
1.注冊(cè) trunk
trunk
需要CocoaPods 0.33
版本以上,用pod --version
命令查看版本,如果版本低,需要升級(jí):
// Pod 版本檢查
pod --version
// 版本升級(jí)
sudo gem install cocoapods --pre -n /usr/local/bin cocoapods
// trunk注冊(cè)
pod trunk register xxxx.shaxxxnxxxx@xxxx.com 'Shaxxxon XXxxx' --description='shaxxxnxxxxx macbook pro' --verbose
加上
--verbose
可以輸出詳細(xì)debug
信息,方便出錯(cuò)時(shí)查看。
2. 驗(yàn)證并查看信息
注冊(cè)后 CocoaPods
會(huì)給你的郵箱發(fā)送驗(yàn)證鏈接,點(diǎn)擊后就注冊(cè)成功了,可以用pod trunk me
命令查看自己的注冊(cè)信息。
3. 創(chuàng)建 Podspec
描述文件
// 首先,轉(zhuǎn)到項(xiàng)目?jī)?nèi)
cd 你的項(xiàng)目文件直接拖過(guò)來(lái)
// 初始化.podspec文件
pod spec create 你的項(xiàng)目名(不加后綴)
4. 編輯 Podspec
描述文件
// 創(chuàng)建pod索引庫(kù),固定寫(xiě)法,并且定義索引庫(kù)的名字為s,后續(xù)通過(guò)s,就能拿到索引庫(kù)
Pod::Spec.new do |s|
// 設(shè)置名稱(chēng)
s.name = "HttpManager"
// 設(shè)置版本號(hào)
s.version = "0.0.1"
// 設(shè)置摘要
s.summary = "A short description of HttpManager."
// 設(shè)置詳情
s.description = "Good"
// 設(shè)置倉(cāng)庫(kù)主頁(yè)
s.homepage = "http://EXAMPLE/HttpManager"
// 設(shè)置許可證
s.license = "MIT"
// 設(shè)置作者
s.author = { "iThinkerYZ" => "690423479@qq.com" }
// 設(shè)置倉(cāng)庫(kù)源,表示在哪可以找到組件工程
s.source = { :git => "", :tag => "#{s.version}" }
// 設(shè)置 源文件路徑 => 不是整個(gè)工程的文件,而是自己封裝的代碼,以后別的工程引入,就會(huì)引入這里的代碼。
s.source_files = "HttpManager/Classes/**/*.{h,m}"
// s.dependency = '' 組件工程依賴(lài)哪些第三方框架
// s.frameworks = 'UIKit', 'MapKit' 組件工程依賴(lài)哪些原生框架
// s.resource_bundles = {} 組件工程圖片資源
end
5. push
代碼到github
在驗(yàn)證和上傳你的 podspec
文件到 trunk
之前,需要將你的源碼 push
到 Github
上,tag
一個(gè)版本號(hào)并發(fā)布一個(gè) release
版本,這樣 podspec
文件中的 s.source
的值才能是準(zhǔn)確的:
git add -A && git commit -m "Release 0.0.1."
git tag '0.0.1'
git push --tags
git push origin master
6.驗(yàn)證
對(duì)于編輯完的 podspec
文件,需要驗(yàn)證一下這個(gè)文件是否可用,如果有任何 WARNING
或者 ERROR
都是不可以的,它就不能被添加到 Spec Repo
中,不過(guò) Xcode
的 WARNING
是可以存在的,驗(yàn)證需要執(zhí)行命令:
pod spec lint 你的podspec文件名.podspec
// 或者 pod lib lint 命令來(lái)驗(yàn)證
通過(guò)的話(huà)就驗(yàn)證成功,失敗會(huì)告訴你錯(cuò)誤的位置,一般很詳細(xì)
驗(yàn)證成功
驗(yàn)證失敗
此處失敗的解決方案:
// 你可以將你的Xcode拖進(jìn)終端內(nèi),看其路徑
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
7. 上傳
// 命令
pod trunk push
上傳失敗
上傳失敗解決方案 :繼續(xù)上傳(上傳失敗是網(wǎng)絡(luò)不穩(wěn)、不好的緣故)
上傳成功
8. 查詢(xún)自己的 pod
簡(jiǎn)單點(diǎn),可以在 CocoaPods官網(wǎng)
自己查詢(xún)。
命令行查詢(xún),首先要更新自己的本地 pod
庫(kù)
// 更新本地 pod 庫(kù)
pod repo update