1. 程式人生 > >3-cocoaPods私有庫制作

3-cocoaPods私有庫制作

create lint 執行 install 是否 們的 系統 assets push

CocoaPods 私有庫制作方式一
1. 新建私有git庫

可以gitlab,也可以github,當然github是公共的,私有的得交費。


2. 創建工程

可以使用pod命令來自動創建,命令:

pod lib create TestKit

中間會有很多配置,根據自己的需求配置即可。

如果想自動創建工程,那麽需要將你的代碼放到一個文件夾下,自己制作.podspec文件即可。

pod spec cretae TestKit

創建完之後,將工程提交到遠端git庫


3. 添加私有庫到本地pod庫:

命令:

pod repo add TestKit [email protected]

[email protected]: 遠端庫的地址

成功之後,我們可以查看一下:

cd ~./cocoapods/repos

open .

這裏除了master之外,新增了一個TestKit文件夾


4. 開發代碼,提交git,並打tag

開發完代碼之後,修改一下.podspec 文件,然後提交git代碼,並打tag
註意:這裏.podspec 中的version必須跟git所打tag版本一致

git add --all
git commit -m "update podspec"
git push origin master
git tag 0.0.1
git push --tags

如果不確定podspec有麽有問題,可用先執行【5】pod檢測,再打tag


5. 檢測一下pod庫是否可用

命令:

pod lib lint

如果有警告可以使用命令忽略:

pod lib lint --allow-warnings

如果有問題,那麽一般是podspec配置問題。

成功提示:

TestKit.podspec passed validation.

6.本地測試庫是否可用

新建工程

pod init

修改podfile文件, 並添加上本地庫路徑

pod ‘TestKit‘, :path => ‘/Users/xxx/Documents/TestKit‘

拉取pod代碼

pod install

成功後,可用看到我們的庫並沒有在pods裏面,而是在Development Pods裏面,可用先檢測代碼有沒有問題。


7.提交本地庫,向Spec Repo提交podspec

命令:

pod repo push TestKit TestKit.podspec

如果沒有什麽問題,那麽恭喜成功了。


8.測試一下

pod搜索一下:

pod search TestKit

在新工程中的podfile文件中,新增

pod ‘TestKit‘

如果報錯,拉取不下來,可以更新一下pod

pod update

如果還是報錯:

[!] An unexpected version directory Assets was encountered for the /Users/xxx/.cocoapods/repos/TestKit Pod in the TestKit repository.
修改podfile文件:

pod ‘TestKit‘, :git => ‘https://xxx/TestKit.git‘

此處git是你遠端git庫的地址,[email protected],換成https的地址即可。


CocoaPods 私有庫制作方式二

此方式是使用公共庫的制作方式,將代碼以framework的形式呈現,那麽源碼也是別人無法看到的。這種方式需要維護兩個git庫,一個是源碼庫,一個是framework庫。維護相對來說麻煩一些,但是制作的跟公共庫一樣,使用方便。


1. 新建git私有庫

新建一個git庫工程


2. 創建工程

創建的方式跟法【一】的一樣


3. 檢測podspec文件是否正確

命令:

pod spec lint TestKit.podspec

此處很可能有問題,根據問題提示修改即可


4. 提交遠端,並打tag

命令參考法【一】


5. 打framework包

使用cocoapods-packager工具,可以使用命令查看自己電腦有沒有安裝:

gem list

如果沒有的話,安裝一下:

sudo gem install cocoapods-packager

如果報錯,沒有權限,新系統修改一下

sudo gem install -n /usr/local/bin cocoapods-packager

使用打包命令:

pod package TestKit.podspec --force

此處--force是強制覆蓋的意思

如果你想把framework放到其他目錄下,切換到你想存的目錄下, 把TestKit.podspec路徑補充完全即可

cd xxx
pod package xxx/xxx/TestKit.podspec --force

註意:tag很重要,必須保證跟TestKit.podspec中的一致,因為打包會根據.podspec文件中的version去git庫找tag標記對應的代碼。


6. 新建framework庫

一般是公有的,其他人可以訪問的,比如:github


7. 新建fremwork工程

跟上面2新建工程一樣,區別在於將源碼替換成framework

如果不想新建,可以直接復制之前新建的工程替換即可。

新建完,可以再檢測一下podspec文件是否正取。

完成後,提交git,並打tag


8. 上傳pod官方庫

使用cocoapods-trunk工具

如果沒有的話,安裝一下:

sudo gem install cocoapods-trunk

如果報錯,沒有權限,新系統修改一下

sudo gem install -n /usr/local/bin cocoapods-trunk

發布podspec:

pod trunk push TestKit.podspec

如果沒有問題,可以搜一下:

pod search TestKit

如果沒有搜到,可以重新setup一下pod,這個過程是比較漫長的,會重新拉取pod官方庫master文件:

pod setup

9. 測試

直接在podfile文件中添加

pod ‘TestKit‘

OK, 大功告成,以後的維護工作,就是重復這個步驟(不用新建git庫、pod工程),修改完代碼別忘了打tag,修改podspec文件version。

轉載自http://semyonxu.com

3-cocoaPods私有庫制作