环境
pod 版本为: 1.2.0.beta.1
git托管用的:https://coding.net/
要搭建自己的私有仓库,需要用到两个东西:一个是代码,另一个是配置文件;代码就不多说了,主要说一下配置文件,这个文件是一个. podspec
文件,里面设置了一些基本的信息,像:名称,简介,代码库地址等等。
既然需要两个东西,我们就一个一个来
1.代码
这个其实就比较简单了,既然想做私有库肯定有功能稳定,封装完善的代码。仅仅需要做的就是把代码放到一个你有权限访问的远程仓库,然后打上tag。获取代码的远程地址,保存一下,一会儿要用到。
2. podspec文件
这个文件就是一个配置文件,将来是需要下载到本地的。不过为了能够和小伙伴们共享,最好也放到一个远程仓库了,同时相当于备份了。
1、创建podspec
先cd到你要创建见podspec文件的目录下,然后创建podspec文件
pod spec create ${name}.podspec
2、修改 podspec的内容
刚创建出来的podspec 文件会有很多的设置项,我们可以选取我们需要的进行填写
Pod::Spec.new do |s|
s.name = "名称"
s.version = "0.0.1" # 这里要和代码的tag保持一致,不然下面取源码的时候会获取不到
s.summary = "简介 "
s.description = "详细描述"
s.homepage = "放上你的主页地址"
s.author = { "你的名字" => "你的邮箱地址" }
s.license = { :type => 'MIT'} #这里就这样写
s.platform = :ios
#这里的地址就是源码的地址
s.source = { :git => "源码地址", :tag => "#{s.version}" }
s.source_files = "*.{h,m}"
end
设置完之后最好验证一下
pod spec lint ${name}.podspec
如果有错误就找到对应的地方修改一下,直到没有错误为止。
然后就可以把podspec文件上传到远程仓库了,仓库的结构设置成这样
├── Specs
└── [SPEC_NAME]
└── [VERSION]
└── [SPEC_NAME].podspec
设置好之后就可以上传到远程仓库了。
3、将私有的repo添加到CocoaPods
pod repo add ${REPO_NAME} ${SOURCE_URL}
添加之后可以到 .cocoapod/repo/
下看一下,是否已经添加进来。
然后再验证一下看是否有问题
$ cd ~/.cocoapods/repos/REPO_NAME
$ pod repo lint ${REPO_NAME}
目前为止私有仓库已经搭建完成了,可以搜索一下,能搜到的话就妥妥的没问题了
pod search ${name}
建个工程试一下吧
创建项目 -> 添加podfile -> 编辑podfile
podfile文件内容
source '私有pods地址'
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
pod 'name','~>0.0.1'
4、安装pod
pod install
如果没有什么问题的话就是成功了。
3.后续
1.添加新的库
1、上传源码,打tag
2、创建podspec上传到仓库
3、更新本地私有仓库
pod repo update ${REPO_NAME}
2.共享给小伙伴
别的小伙伴想用你的私有仓库的话可以将私有的repo添加到他的CocoaPods。然后设置podfile文件就可以了,添加新的仓库源地址就可以了。
3.如果需要依赖别的第三方库
假如你的私有库需要依赖AFNetworking
,在podspec设置依赖。当你在使用的时候,如果你的项目里已经有AFNetworking
,那就直接使用,如果没有会自动添加进来。
s.dependency 'AFNetworking', '~> 3.1.0'