參考文獻(xiàn): 創(chuàng)建pod庫
-
步驟一:創(chuàng)建一個pod 工程
pod lib create testDemo (pod 庫的名稱)
-
1.執(zhí)行上邊的命令之后會出現(xiàn)如下提示,只需要一一填寫就好:
-
2.成功之后如下圖:
-
3.成功之后本地項目的目錄結(jié)構(gòu)如下圖:
-
4.對項目中的后綴為
podspec
的文件進(jìn)行配置轧钓。具體配置內(nèi)容如下格式:
cocoapods官網(wǎng)對podspec文件格式說明 具體說明如下:
Pod::Spec.new do |spec|
spec.name = 'Reachability'
spec.version = '3.1.0'
spec.license = { :type => 'BSD' }
spec.homepage = 'https://github.com/tonymillion/Reachability'
spec.authors = { 'Tony Million' => 'tonymillion@gmail.com' }
spec.summary = 'ARC and GCD Compatible Reachability Class for iOS and OS X.'
spec.source = { :git => 'https://github.com/tonymillion/Reachability.git', :tag => 'v3.1.0' }
spec.module_name = 'Rich'
spec.swift_version = '4.0'
spec.ios.deployment_target = '9.0'
spec.osx.deployment_target = '10.10'
spec.source_files = 'Reachability/common/*.swift'
spec.ios.source_files = 'Reachability/ios/*.swift', 'Reachability/extensions/*.swift'
spec.osx.source_files = 'Reachability/osx/*.swift'
spec.framework = 'SystemConfiguration'
spec.ios.framework = 'UIKit'
spec.osx.framework = 'AppKit'
spec.dependency 'SomeOtherPod'
end
-
步驟二:給 pod 庫中添加類文件。
-
1.新創(chuàng)建一個包含
.h
與.m
的類文件放到Classes
的文件夾下邊锐膜,如下圖:
-
2.因為
ReplaceMe.m
是創(chuàng)建好pod庫工程時候給的模板文件毕箍,沒有用,所以移除ReplaceMe.m
這個文件道盏。移除后Classes
如下圖:
-
3.從終端進(jìn)入到新建的pod庫
Example
文件夾下而柑,因為我們熟悉的Podfile
文件在這里,我們要執(zhí)行pod install
把剛才新建的類文件加入到pod庫中荷逞。如下圖:
-
4.上邊操作成功之后類文件會出現(xiàn)在pods庫文件夾下邊媒咳,然后我自己寫了一個測試方法。
-
步驟三:項目push到遠(yuǎn)程服務(wù)器
-
1.先把本地的倉庫的文件添加到git中种远,命令如下:
git add .
注意:
如果創(chuàng)建出來的項目默認(rèn)沒有git
的話涩澡,需要在這個命令之前先執(zhí)行以下git init
,初始化一下坠敷。我這里是本地已經(jīng)默認(rèn)有git
了所以就省略了這一步妙同。
-
2.提交內(nèi)容說明:
git commit -m "first commit"
-
3.本地倉庫與遠(yuǎn)程倉庫關(guān)聯(lián):
git remote add origin https://github.com/624990742/[JCZJTest](https://github.com/624990742/JCZJTest)
.git
-
4.推送到遠(yuǎn)程服務(wù)器
git pull origin master
git push origin master
說明:
正規(guī)流程就是先pull,然后在push膝迎。如果是初創(chuàng)的項目沒有特別要求也可以使用強(qiáng)制push的命令git push origin master -f
粥帚。
-
5.上邊執(zhí)行成功之后,就證明你的項目已經(jīng)
push
到遠(yuǎn)程的github上的遠(yuǎn)程倉庫了限次。
-
步驟四:給pod庫上tag標(biāo)簽然后推送到遠(yuǎn)程服務(wù)器芒涡。
說明:
比如我們在引入Masonry
的時候會指定一個版本號pod 'Masonry', '1.0.2'
,那么我們這里在做的事情也就是給我們自己的pod 庫建立一個tag分支卖漫。這個tag分支就是將來提供給別人依賴的版本號分支费尽,有了它,別人使用你的pod庫的時候就可以根據(jù)版本號來控制了懊亡。
-
1.進(jìn)入到自己的pod 項目下依啰,執(zhí)行如下命令把標(biāo)了tag標(biāo)簽的版本號也push到遠(yuǎn)程服務(wù)器。
git tag 0.1.0
git push --tags
成功之后會有一個提示:* [new tag] 0.1.0 -> 0.1.0
-
步驟五:使用trunk方式將代碼發(fā)布到CocoaPods上店枣。
-
1.在編輯好
.podspec
文件內(nèi)容的前提下速警,使用如下命令先本地檢查一下podspec是否合法叹誉。
pod lib lint --verbose
-
2.本地驗證通過會出現(xiàn)如下提示:
-
3.聯(lián)網(wǎng)驗證
pod spec lint JCMaNongChenZaiTest.podspec
-
4.驗證通過之后就可以提交到cocoapods上了。繼續(xù)執(zhí)行如下命令:
pod trunk push JCZJTest.podspec --verbose
若發(fā)布到自己的私有
spec
的話這里需要更改為:
pod repo push mySpecs JCZJTest.podspec
闷旧。這里的mySpecs
是我在cocoapods 中創(chuàng)建的一個私有存儲庫版本信息的倉庫长豁。
-
5.成功后,就可以pod search到我們提交的庫了,如果搜不到我們的pod庫忙灼。就先執(zhí)行如下命令
rm ~/Library/Caches/CocoaPods/search_index.json
-
6.在執(zhí)行
pod search JCZJTest
就好了匠襟。