引言
在做項(xiàng)目的時(shí)候夫植,會(huì)用到很多第三方庫(kù),其中最出名的應(yīng)該屬于AFNetworking
了怕轿,這個(gè)時(shí)候我們是從CocoaPods庫(kù)中去取別人的代碼偷崩。
如果你想提供一個(gè)庫(kù)供別人使用,那么首先得把代碼上傳到CocoaPods庫(kù)中撞羽,接下來會(huì)講解如何創(chuàng)建自己Pod庫(kù)
一 在Github上創(chuàng)建項(xiàng)目(項(xiàng)目名假設(shè)為Test)
- 在Github上創(chuàng)建項(xiàng)目很簡(jiǎn)單阐斜,在創(chuàng)建項(xiàng)目的時(shí)候應(yīng)該同時(shí)創(chuàng)建
.gitignore
文件(Objective-C),license
文件(MIT)和README.md
文件诀紊。 - 將項(xiàng)目克隆到本地
- 創(chuàng)建一個(gè)文件夾谒出,命名為
Test
,與.gitignore
文件并級(jí),里面放供別人使用的代碼 - 創(chuàng)建
Test.podspec
文件邻奠,與.gitignore
文件并級(jí)笤喳,文件內(nèi)容格式如下,然后修改對(duì)應(yīng)的值碌宴,當(dāng)然也可以參考Github上別人是怎么寫這個(gè)文件的
Pod::Spec.new do |s|
s.name = 'JCCycleView'
s.version = '1.0.2'
s.license = 'MIT'
s.summary = 'A cycle display view'
s.homepage = 'https://github.com/henrychen88/JCCycleView'
s.authors = { 'henrychen88' => '24129114@qq.com' }
s.source = { :git => "https://github.com/henrychen88/JCCycleView.git", :tag => s.version.to_s }
s.requires_arc = true
s.ios.deployment_target = '7.0'
s.source_files = 'JCCycleView/*.{h,m}'
end
- (可選)一般來說杀狡,都會(huì)提供一個(gè)Demo工程,以便可以更快地熟悉使用方法贰镣,操作完成后呜象,可以看到如下的文件層次結(jié)構(gòu)
文件層級(jí)結(jié)構(gòu)
- JCCycleView是步驟3創(chuàng)建的
- JCCycleView是步驟4創(chuàng)建的
- JCCycleViewDemo是步驟5創(chuàng)建的
二 上傳代碼到CocoaPods
- 注冊(cè)trunk(如果沒有注冊(cè))
pod trunk register email 'username' --verbose
郵箱是用戶名是對(duì)應(yīng)Github的郵箱和用戶名,執(zhí)行完上面的語句后會(huì)收到一個(gè)確定的郵件,點(diǎn)擊里面的鏈接就注冊(cè)成功了碑隆,使用pod trunk me
查看自己的信息 - 把修改的代碼提交到Github服務(wù)器
git add -A
git commit -m "comment"
git push
- 給源代碼打Tag恭陡,就是你這個(gè)庫(kù)的版本號(hào),Pods里面的庫(kù)的更新都是通過這個(gè)Tag來判斷的上煤,這里的版本號(hào)應(yīng)該與.podspec里面的版本號(hào)保持一致
git tag '1.0.2'
git push --tags
- 上傳.podspec文件
pod trunk push JCCycleView.podspec
這里可能會(huì)出現(xiàn)問題休玩,根據(jù)錯(cuò)誤提示來修改即可
三 更新代碼到CocoaPods
- 執(zhí)行二.2
- 執(zhí)行二.3,設(shè)置新的Tag
pod trunk push