一、创建私有库
1、使用xcode建立新的工程,选择Cocoa Touch Static Library,取名为podTest

 



 





WechatIMG1172.jpeg


 

2、创建一个类PodTest,给PodTest添加一个类方法,使用后随意输出点啥

popTest.h

@interface podTest : NSObject

+ (void)NSLogHello; @end

popTest.m

@implementation podTest

+ (void)NSLogHello{ NSLog(@"SHEEP HELLO"); } @end


 



WechatIMG1173.jpeg


3、找一个能托管PodTest的git服务器,创建一个代码仓库用于管理PodTest,再创建spec文件用来装各种私有库的podspec描述文件pop_spec

4、通过git服务器新建一个名字叫podTest的Project,管理仓po p_spec

 


 



WechatIMG1174.jpeg


 

同样创建pop_spec仓

 


 



WechatIMG1177.jpeg


5、点击确定后,生成了一个用于管理podTest的仓库,地址如图

 


 



WechatIMG1176.jpeg


 

6、打开git管理工具SourceTree,点击 +新仓库按钮,选择从URL克隆选项,将上面的仓库地址复制进去,选择好自己的目标路径和名称后点击克隆

 


 



WechatIMG1178.jpeg


打开终端,输入截图内容

 


 



WechatIMG1179.jpeg


7、打开SourceTree关联的文件夹,将我们之前建立好的PodTest库整个全部拖进这个文件夹.替换README.md


 



WechatIMG1180.jpeg


8、进入SourceTree,点击文件状态,将所有的改动全选后提交,再推送到git服务器.
9.将你需要某次修改打上一个tag,作为一个库的修改版本.

将对应某次修改点击右键标签

 


 



WechatIMG1181.jpeg


 

比如我要指定一个1.5版本,则在标签中写1.5,点击添加

 


 



WechatIMG1182.jpeg



效果如下,出现了一个牌子,则表明已经给这次修改打好了标签.


 



WechatIMG1183.jpeg


二.为spec仓库创建spec文件 (由于spec仓库我已创建好,所以只需要关系怎么往里加内容)
1.创建spec文件

打开终端输入

$cd ~/

进入到根目录后输入命令创建一个名字叫xl_test.podspec的描述文件

pod spec create pan_popTest

通过vim进行编辑

vim pan_popTest.podspec

vim pan_popTest.podspec

清空全部内容

:%d

:%d

内容清空后点击i 进入编辑模式,输入以下内容

Pod::Spec.new do |s|
  s.name         = "pan_popTest"
  s.version      = "1.0" #当前版本 s.summary = "pan-popTest a hello " #描述 s.homepage = "http://git.op.xywy.com/panjunfeng/popTest" #库文件主页地址 s.license = 'MIT' s.author = { 'panjunfeng' => 'panjunfeng@xywy.com' } #开发者 s.source = { :git => 'git@git.op.xywy.com:panjunfeng/popTest.git', :tag => '1.0' } #文件的git地址,以及当前版本对应的tag,这个1.0就是我刚刚标注的 s.source_files = 'popTest/popTest/*.{h,m}' #文件所在的目录,后面*.{h.m}是一个正 则表达式,目录我下面会有解释 # s.resources = 'PodTest/PodTest/*.xib' #资源文件所在的目录图片,xib等,这个demo没有用到 s.framework = 'UIKit' #当前这个库所依赖的系统的库 s.platform = :ios s.requires_arc = true #是否支持arc end 
Pod::Spec.new do |s|
  s.name         = "pan_popTest"
  s.version      = "1.0" #当前版本 s.summary = "pan-popTest a hello " #描述 s.homepage = "http://git.op.xywy.com/panjunfeng/popTest" #库文件主页地址 s.license = 'MIT' s.author = { 'panjunfeng' => 'panjunfeng@xywy.com' } #开发者 s.source = { :git => 'git@git.op.xywy.com:panjunfeng/popTest.git', :tag => '1.0' } #文件的git地址,以及当前版本对应的tag,这个1.0就是我刚刚标注的 s.source_files = 'popTest/popTest/*.{h,m}' #文件所在的目录,后面*.{h.m}是一个正 则表达式,目录我下面会有解释 # s.resources = 'PodTest/PodTest/*.xib' #资源文件所在的目录图片,xib等,这个demo没有用到 s.framework = 'UIKit' #当前这个库所依赖的系统的库 s.platform = :ios s.requires_arc = true #是否支持arc end

退出
我需要的资源目录如下

 


 



WechatIMG1184.jpeg


2.进入终端后验证spec文件是否有效

pod spec lint pan_popTest.podspec --allow-warnings 
pod spec lint pan_popTest.podspec --allow-warnings

如图

 


 



WechatIMG1185.jpeg


有passed validating则表示spec文件验证通过了

三.给cocoapods添加私有repo
1.终端输入

pod repo add pan_pod http://git.op.xywy.com/panjunfeng/popTest.git

pod repo add pan_pod http://git.op.xywy.com/panjunfeng/popTest.git

2.查看是否添加成功

pod repo list

pod repo list

如果出现

 


 



WechatIMG1186.jpeg


则表明添加成功,上面master是github用到的,下面mypod就是我们刚刚私有的.他们都讲用于管理描述库的spec文件

3.将xl_test.podspec文件添加到spec仓库和cocoapods

pod repo push pan_pod pan_popTest.podspec --allow-warnings 
pod repo push pan_pod pan_popTest.podspec --allow-warnings

出现

 


 



WechatIMG1187.jpeg


则表明添加成功.

4.查询本地私有spec管理文件夹

open ~/.cocoapods/repos

open ~/.cocoapods/repos

会有2个文件夹,其中mypod就是我们刚刚关联上,双击打开就会看到我们刚刚加入的spec文件,以及各个版本对应的spec描述,不要轻易修改他.

四.引入私有库
1.cd到前以前文章讲述时建立好的TestCocoaPods工

2.查询是否有我们需要的私有库

pod search pan_popTest

3修改pod文件

platform :ios, '8.0'
source 'https://github.com/CocoaPods/Specs.git'
target 'check_PROJECT' do source 'http://git.op.xywy.com/panjunfeng/popTest.git' pod 'pan_popTest', '~> 1.0' end

4.成功后通过终端CD到工程目录
5.执行

pod install

五、更新
执行一、8、9 将修改内容提交到git服务器,打上git
执行二、1、2
执行三、2、3、4

六、补充
移除私有repo

pod repo remove pan_pod

pop_spec仓 保存podspec描述文件,跟随更改就可以