一、創(chuàng)建本地開發(fā)版?zhèn)}庫
可以參考 Cocoapods管理本地代碼上部分。
@我的印象筆記
二、創(chuàng)建服務端私有倉庫
這里需要兩個git倉庫,一個存放源碼,一個存放.podspec配置文件。
1、Pod 自動創(chuàng)建工程
可以用命令行自動完成創(chuàng)建庫文件,測試工程,podspec的步驟。
終端輸入
pod lib create TestPrivateCodeRepo
CoccoaPods 會問幾個問題:
要使用的語言
是否需要樣例工程
是否需要一個測試框架
是否需要基于 View 的測試
還有類的前綴
然后自動打開創(chuàng)建好的工程。
2、修改.podspec文件
cd 到 TestPrivateCodeRepo根目錄下,修改TestPrivateCodeRepo.podspec文件配置,
例如TestPrivateCodeRepo.podspec修改為這樣:
Pod::Spec.new do |s|
s.name = 'TestPrivateCodeRepo'
s.version = '0.2.0'
s.summary = 'cocoapods 私有倉庫測試demo'
s.description = <<-DESC
cocoapods 私有倉庫測試demo cocoapods 私有倉庫測試demo cocoapods 私有倉庫測試demo cocoapods 私有倉庫測試demo cocoapods 私有倉庫測試demo cocoapods 私有倉庫測試demo
DESC
s.homepage = 'https://github.com/Joeyechang/TestPrivateCodeRepo'
s.license = { :type => 'MIT', :file => 'LICENSE' }
s.author = { 'changyou0730@gmail.com' => 'changyou0730@gmail.com' }
s.source = { :git => 'https://github.com/Joeyechang/TestPrivateCodeRepo.git', :tag => s.version.to_s }
# s.social_media_url = 'https://twitter.com/joeychang'
s.ios.deployment_target = '8.0'
s.source_files = 'TestPrivateCodeRepo/Classes/*.{h,m}'
s.requires_arc = true
# s.public_header_files = 'Pod/Classes/**/*.h'
# s.frameworks = 'UIKit', 'MapKit'
# s.dependency 'AFNetworking', '~> 2.3'
end
s.version s.homepage s.source s.source_files 要重點關注下,別配置錯了。
3、push文件,并打上標簽
將此版本資源文件push,并打上標簽(標簽用來pod install 指定的版本)
git add . //添加所有文件
git commit -m "describe" //放到緩存區(qū)準備push
本地git庫是直接pod lib create TestPrivateCodeRepo生成的,相當于直接 git init出來的,還沒有鏈接到遠程庫。
git remote add origin https://github.com/Joeyechang/TestPrivateCodeRepo.git
git pull <庫地址> master
git status //看一下狀態(tài)有東西要提交
git add .
git commit -m "describe"
git push origin master
git tag -m "tag describe" 0.1.0 //打標簽
git push --tags //push 標簽
本地驗證podspec
pod lib lint
4、發(fā)布podspec
創(chuàng)建spec庫,spec庫就相當于一個配置文件庫,直接在Github或Coding創(chuàng)建一個空白庫就行了。
(這個是在測試工程根目錄即TestPrivateCodeRepo.podspec所在目錄下執(zhí)行命令)
pod repo add TestSpecs 遠程Spec庫的git地址 //它的作用相當于創(chuàng)建一個空目錄TestSpecs,在里面git clone 遠程Spec庫的git地址
cd 到TestPrivateCodeRepo根目錄,驗證podspec
pod lib lint TestPrivateCodeRepo.podspec
驗證順利的話將podspec發(fā)布
pod repo push TestSpecs TestPrivateCodeRepo.podspec
此時遠程Spec庫和本地~/.cocoapods/repos/TestSpecs路徑下都得到了更新。
5、測試
新建工程》pod init >>編輯Podfile
source 'https://github.com/Joeyechang/MySpec.git'
source '我們自己的spec庫.git'
use_frameworks!
target 'AnProject' do
pod 'TestPrivateCodeRepo'
end
最后,當所用TestSpecs有更新時執(zhí)行 pod repo update TestSpecs,同步遠程spec庫到本地
參考: