iOS組件化開發之發佈私有庫
對於需要切換源碼和二進制庫的庫,需要同時發佈源碼和二進制庫,此文介紹詳細流程。
一、增加版本號
修改 podspec
中s.version
到對應版本號。規則:
- 修復問題:0.0.x
- 小功能修改:0.x.0
- 革命性改動:x.0.0
二、打 tag,並推送到源碼倉庫
pod的打包和發佈命令,都是驗證遠程倉庫代碼,所以必須打出和s.version
對應的 tag
。
命令如下:
git tag x.x.x
git push --tags
三、打包二進制庫推送到baniry倉庫
每個私有庫在此組有單獨的 project,用於存放二進制文件
因爲我們希望把所有私有庫做成可以二進制和源碼切換,並源碼保密,所以我們在每次發佈時需要打包成二進制並放至遠程倉庫
IS_SOURCE_CODE=1 pod package xxx.podspec
得到 對應版本的 .framework
,copy 至對應二進制倉庫,提交併打出 tag,然後推送到遠程。
二進制庫版本號與源碼庫版本號必須一一對應
四、發佈podspec
使用如下命令發佈:
pod repo push --allow-warnings --verbose your_spec xxx.podspec
pod 會驗證我們的倉庫,因爲我們默認使用二進制庫,所以此時 pod 會去拉我們剛剛上傳的二進制倉庫。而我們打包時使用IS_SOURCE_CODE=1
切換爲源碼打包。至此兩個版本的庫都經過了驗證,保證了可用性。
其中your_spec
是在添加私有倉庫時設置的名稱。
添加私有倉庫:
pod repo add your_spec 私有庫地址