一. 建立版本庫首先,我們要建立乙個像master
一樣的存放版本描述檔案的git倉庫,因為是私人git倉庫,我選擇了oschina來建立自己的石油倉庫(因為是免費的?),當然你也可以選擇在github上建立**($7/month)**。
接下來,我將以oschina為例來建立自己的私有庫
建立版本描述倉庫
版本庫名字為syxrepo
,創庫狀態要設為私有
。
開啟終端,將這個遠端私有庫新增到本地。
$ pod repo add syxrepo
複製**
開啟資料夾~/.cocoapods/repos
,你可以發現repos
資料夾下增加了乙個syxrepo
的庫。
二. 建立**庫
現在,我們回到oschina來建立私人**庫。
接下來,將倉庫轉殖到本地,新增我們的**檔案
,倉庫名.podspec
描述檔案,如下圖所示:
.podspec
檔案是我們**庫的pod描述檔案,可以通過pod指令建立空白模板:
$ pod spec create c
複製**
或者直接拷貝下面的模板進行修改(強烈建議)
pod::spec.new do |s|
s.name = "privatepodsdemo1"
# 專案名稱
s.version = "1.0.0"
# 版本號 與 你倉庫的 標籤號 對應
s.summary = "私人pod**"
# 專案簡介
s.license = "mit"
# 開源證書
# s.license =
s.homepage = ""
# 倉庫的主頁
s.source = " }#你的倉庫位址,不能用ssh位址
s.source_files = "privatepodsdemo1/classes/*."
# 你**的位置, privatepodsdemo1/*. 表示 privatepodsdemo1 資料夾下所有的.h和.m檔案
s.requires_arc = true
# 是否啟用arc
s.platform = :ios, "8.0"
#平台及支援的最低版本
# s.frameworks = "uikit", "foundation" #支援的框架
# s.dependency "jsonkit", "~> 1.4" # 依賴庫
# user
s.author = # 作者資訊
# s.social_media_url = "" # 個人主頁
end複製**
然後,開始驗證我們的倉庫配置是否正確,按照錯誤提示來修改我們的配置。
$ pod lib lint
複製**
如果出現錯誤警告,需要新增--private
或者--allow-warnings
,就能驗證通過
$ pod lib lint --private
複製**
驗證成功後會出現以下輸出:
-> privatepodsdemo1 (1.0.0)
privatepodsdemo1 passed validation.
複製**
三. 將版本描述檔案推送到版本庫將專案打上標籤推送到遠端倉庫,標籤號
和版本號
對都應該是1.0.0
最後,要將我們的**倉庫的描述檔案 push 到我們的版本倉庫中
$ pod repo push syxrepo privatepodsdemo1.podspec
複製**
這時會對遠端**倉庫進行驗證,如果成功了,我們就會在~/.cocoapods/repos/syxrepo
中發現新增的倉庫描述資訊了
如果出現了以下錯誤
[!] the repo `syxrepo` at `../.cocoapods/repos/syxrepo` is not clean
複製**
更新下我們的版本庫
$ pod repo update syxrepo
複製**
再繼續上傳,即可。pod repo push myrepo privatepodsdemo1.podspec
的過程就是
驗證 privatepodsdemo1.podspec 檔案
拉取遠端版本庫 syxrepo
新增 privatepodsdemo1.podspec 到版本庫中
新增完成後我們就可以在pod中搜尋
$ pod search privatepodsdemo1
複製**
-> privatepodsdemo1 (1.0.0)
私人pod**測試
pod 'privatepodsdemo1', '~> 1.0.0'
- homepage:
- source: /privatepodsdemo1.git
- versions: 1.0.0 [syxrepo repo]
複製**
四. 私有pod庫的使用在使用私人pod庫的時候,我們需要在podflie
檔案中加入以下語句,指明私人的版本庫位址。 (**注意:**要是版本庫的位址,而不是**庫的位址)
source 『』
複製**
如果你還使用了公有的pod庫,需要把公有庫位址也帶上
source
''複製**
最終,我們的podflie
檔案變成以下的樣子
source 『』
source 『』
platform :ios, '8.0'
target 『mypodtest』 do
pod 『privatepodsdemo1』 #我們的私有庫
end複製**
五. 測試
$ pod install
複製**
載入完成可以看到**已經整合到我們的專案中了 Cocoapods 建立私有庫
比如我有乙個框架a,該工程已經在git版本管理下了,先要在該工程下建立podspec 檔案,裡面包含著一些資訊。比如使用該框架時依賴哪些框架,開源協議,需要哪些檔案,以及該工程的對應tag標籤。然後上傳podspec到私有specrepo。spec repo裡面可以管理很多podspec,其實coc...
CocoaPods 私有庫建立
總結流程和pod 指令,以及自己操作遇到的問題。參考文章 ios元件化 基礎 ios元件化 專案元件化 swift objective c 使用cocoapods建立 管理私有庫 初中級用法 swift objective c 使用cocoapods建立 管理私有庫 高階用法 建立自己的私有庫 4 ...
CocoaPods建立私有庫例項
導言1.從最簡單的開始 pod私庫建立,可以分為三部分 1 庫,就是我們一般存在 的git庫,例如github,推薦用國內的。例如gitee 2 podspec,這個是建立私庫的核心部分,用命令建立後,手動修改 3 gitspec,即將第二部中的podspec存到某git庫中,這樣其它專案才能通過設...