CocoaPods私有庫管理

簡介:
前一篇文章已經介紹過若是安裝使用CocoaPods,下面將要介紹若是經過CocoaPods和git來維護咱們私有的庫.
我的或公司在開發過程當中,會積累不少能夠複用的代碼包,有些咱們不想開源,又想像開源庫同樣在CocoaPods中管理它們,那麼經過私有倉庫來管理就很必要。
對於CocoaPods還不太熟悉的,建議到CocoaPods的官網看看: https://cocoapods.org/,或者百度谷歌查詢下cocoapods一些經常使用的功能.
 
原理:

 


 
一.建立私有庫
1.使用xcode創建新的工程,選擇Cocoa Touch Static Library,取名爲pod_test.
 

 


 
 
2.建立一個類PodTest,給PodTest添加一個類方法,使用後輸出hello world
 
.h
#import <Foundation/Foundation.h>
@interface PodTest : NSObject
+(void)test;
@end
 
.m
#import "PodTest.h"
@implementation PodTest
+(void)test {
    NSLog(@"hello world");
}
@end 
3找一個能託管PodTest的git服務器,建立一個代碼倉庫用於管理PodTest
 
4.經過git服務器新建一個名字叫pod_test的Project

 


 
5.點擊肯定後,生成了一個用於管理pod_test的倉庫,地址如圖
 
6.打開git管理工具SourceTree,點擊 +新倉庫按鈕,選擇從URL克隆選項,將上面的倉庫地址複製進去,選擇好本身的目標路徑和名稱後點擊克隆.
7.打開SourceTree關聯的文件夾,將咱們以前創建好的PodTest庫整個所有拖進這個文件夾.
 
8.進入SourceTree,點擊文件狀態,將全部的改動全選後提交,再推送到git服務器.
 
9.將你須要某次修改打上一個tag,做爲一個庫的修改版本.
將對應某次修改點擊右鍵標籤

 

好比我要指定一個1.5版本,則在標籤中寫1.5,點擊添加
 
效果以下,出現了一個牌子,則代表已經給此次修改打好了標籤.

二.爲spec倉庫建立spec文件 (因爲spec倉庫我已建立好,找個私有庫目前就只是經過git另外建立的一個空的什麼都沒有的目錄,用來裝各類私有庫的podspec描述文件,和github那個做用同樣,因此只須要關係怎麼往裏加內容)
1.建立spec文件
打開終端輸入
$cd ~/
進入到根目錄後輸入命令建立一個名字叫xl_test.podspec的描述文件
$pod spec create xl_test
經過vim進行編輯
$vim xl_test.podspec
清空所有內容
:%d
內容清空後點擊i 進入編輯模式,輸入如下內容
 
Pod::Spec.new do |s|
  s.name         = "xl_test"  
  s.version      = "1.5" #當前版本
  s.summary      = "xl_testa ad ha va " #描述
  s.homepage     = "https://github.com/goingta/MyPodDemo" #庫文件主頁地址
  s.license      = 「caimao"
  s.author       = { "tanqilong" => "tanqilong@huobi.com" }  #k開發者 
  s.source       = { :git => "http://git.caimaodev.com/tanqilong/pod_test.git", :tag => "1.5" } #文件的git地址,以及當前版本對應的tag,這個1.5就是我剛剛標註的
  s.source_files = 'PodTest/PodTest/*.{h,m}' #文件所在的目錄,後面*.{h.m}是一個正則表達式,目錄我下面會有解釋
  s.resources    = 'PodTest/PodTest/*.xib' #資源文件所在的目錄圖片,xib等
  s.framework    = 'UIKit' #當前這個庫所依賴的系統的庫
  s.platform     = :ios 
  s.requires_arc = true #是否支持arc
end

  

 
編輯好spec後對應效果以下
注意引號"別寫成了」,按ESC 輸入
:wq
 回車推出vim回到終端.
我須要的資源目錄以下
 
路徑是已隱藏的.git爲準開始拼接(PodTest.h是我臨時多建立的,你不用建立)
 
2.進入終端後驗證spec文件是否有效
$ pod spec lint xl_test.podspec --allow-warnings
如圖
 
有passed validating則表示spec文件驗證經過了
 
三.給cocoapods添加私有repo
1.終端輸入
$pod repo add mypod http://git.caimaodev.com/tanqilong/PrivateCocoapodsSpec.git
2.查看是否添加成功
$pod repo list
若是出現
master
- Type: git (master)
- URL:  https://github.com/CocoaPods/Specs.git
- Path: /Users/tanqilong/.cocoapods/repos/master
 
mypod
- Type: git (master)
- URL:  http://git.caimaodev.com/tanqilong/PrivateCocoapodsSpec.git
- Path: /Users/tanqilong/.cocoapods/repos/mypod

則代表添加成功,上面master是github用到的,下面mypod就是咱們剛剛私有的.他們都講用於管理描述庫的spec文件ios

3.將xl_test.podspec文件添加到spec倉庫和cocoapods
$ pod repo push mypod xl_test.podspec --allow-warnings
出現
則代表添加成功.
4.查詢本地私有spec管理文件夾
$ open ~/.cocoapods/repos
會有2個文件夾,其中mypod就是咱們剛剛關聯上,雙擊打開就會看到咱們剛剛加入的spec文件,以及各個版本對應的spec描述,不要輕易修改他.
 
四.引入私有庫
到此咱們已經部署好私有庫全部的環境了,目前只須要向前一篇文章所講的使用pod的方式引入就好了.
1.cd到前之前文章講述時創建好的TestCocoaPods工程
$ cd ~/desktop/TestCocoaPods
2.查詢是否有咱們須要的私有庫
$ pod search xl_test
3修改pod文件
打開TestCocoaPods工程,修改Pods文件以下
 
source 'https://github.com/CocoaPods/Specs.git'
source 'http://git.caimaodev.com/tanqilong/PrivateCocoapodsSpec.git'
platform :ios, '8.0'
 
target 'TestCocoaPods' do
pod 'xl_test', '~> 1.5'
end
 
 
4.成功後經過終端CD到工程目錄
 
5.執行
$pod install 
操做完畢,咱們私有的庫已經進入進去了.
相關文章
相關標籤/搜索