建立自己的CocoaPods的Spec倉庫

2021-06-26 05:44:15 字數 2080 閱讀 4148

最近在研究cocoapods用來管理公共**和依賴庫,在網上看了一些博文,有介紹cocoapods的入門使用,spec檔案的製作以及使用私有的spec檔案和依賴本地包。本文將介紹如何建立自己的spec倉庫,如果還不知道cocoapods的使用和spec檔案的編寫,可以閱讀以下幾篇博文:

用cocoapods做ios程式的依賴管理

《如何編寫乙個cocoapods的spec檔案》

《cocoapods 入門》

cocoapods高階:本地包管理

通過上面幾篇博文,我們可以為自己的**庫編寫spec檔案,並且有以下四種方法來使用我們的spec檔案:

第一種:將spec檔案放到本地乙個目錄中,在podfile檔案中使用以下方法依賴

pod 'versionlib', :podspec => '/users/cvte/gitlab/xcversionmanger/versionlib.podspec』

第二種:將spec檔案放在git上,在podfile檔案中使用以下方法依賴

pod 'versionlib', :git => '

'第三種:將spec檔案放在乙個目錄下,在podfile中使用以下方法進行依賴,該種方法和第一種方法區別在於pods將忽略spec檔案的

s.source項,也就是說使用這種方法,pods將不會去指定的源位址拉取原始碼,而是使用到指向的目錄下獲取原始碼,並且原始碼檔案不會被拷貝到專案的pods目錄下,而是以引用的方法加入專案工程中。如果是多人開發,使用這種方法,其他開發人員將無法獲取指定的源**。

pod'versionlib'

,:path

=>

'/users/cvte/gitlab/xcversionmanger』

第四種:將spec檔案放到cocoapods的搜尋目錄下,pods在安裝時會從cocoapods的官方github上拉取所有的spec檔案,並儲存在

~/.cocoapods

目錄下,我們可以在cocoapods的子目錄

repos/

master/specs下建立乙個我們自己的專案並且spec放在該目錄下:

repos/

master/specs

/versionlib/0.0.4

其中目錄versionlib名字必須和spec中的名字一致,後面0.0.4就是版本號,這樣就可以在podfile檔案中使用以下方法進行依賴

pod versionlib 0.0.4

通過上述幾種方法可以滿足我們基本的需求,前三種podspec檔案分散,不便於管理,使用個人的**庫比較方便。第四種方式在多人合作時,每個人都必須手動去生成相關的目錄,如果podspec檔案較多時管理將更麻煩。下面將介紹如何將我們的podspec檔案進行統一的管理,做到類似官方形式的posec倉庫。

我們將所有podspec檔案按照第四種方法進行組織,放在gitlab上,當然你也可以放在其他平台上,這裡我放在公司內部gitlab上,目錄結構如下:

然後執行pod repo add cvterepo 

執行完成之後pod將會從git上clone podspec檔案列表,儲存在master同級目錄下,這樣的話就可以使用第四種方法去依賴私有庫,podspec檔案的維護,大家可以使用git去管理,也可以使用pod提供的命令去管理。

使用pod命令管理主要是使用pod repo命令如下:

pod repo push repo_name spec_name.podspec

執行該命令,pod將首先進行podspec檔案驗證,如果驗證通過後,才會上傳到git倉庫中,如果沒有許可權則要輸入使用者名稱和密碼。該命令會再git專案的根目錄,建立以spec_name為名字的目錄,並按版本號建立子目錄,如果版本不同,則會建立對應的版本目錄。這個過程不像上面使用git方式需要自己建立版本目錄。

個人推薦使用官方的pod repo命令進行倉庫的管理,在git建立專案之後將專案組的其他人員加入到專案即可,這樣大家就可以向podspec倉庫提交podspec檔案了。這裡需要注意的是,在使用時,pod將優先查詢自定義的倉庫,在去查詢master倉庫,所以要注意podspec檔案不要和網路上的衝突,最好在庫名字前加入私有的字首。

CocoaPods 建立自己的庫

cocoapods 建立自己的庫 建立方法 1.建立專案的podspec索引檔案.進入需要新增的庫根目錄中初始化乙個podspec檔案.命令 cd desktop x pod spec create x x 為spec檔名,和專案名稱保持一致2.建立遠端倉庫.這裡用的github,在github的頁...

建立自己的CocoaPods庫

1 cocoapods的安裝不必細表。2 建立庫 以nblimagecropper為例 pod lib create nblimagecropper然後會有一系列的選擇,根據實際情況選擇即可。3 編輯nblimagecropper.podspec s.source填github庫位址即可。4 驗證庫...

配置自己的CocoaPods庫

預設安裝的cocoapods確實很好用,可是畢竟自己會寫一些庫和修改一些第三方庫來用。所幸cocoapods確實是乙個神器。他可以定義自己的庫來用。如何安裝cocoapods,請參考這篇 我的boss寫了乙個基於magicalrecord的coredata的icloud設定的類。也許我們以後要用到的...