一、创建私有库
一般情况下公司内部都会搭建自己的源码托管服务器,这里主要是在gitlab中进行创建。
1、打开gitlab地址,选择“Project”打开并创建一个私有库:
创建私有库需要选择指定的Group、Visibility Level需要选择为Private。
2、gitlab中私有库创建完成后需要在本地添加私有库,打开终端运行如下命令:
pod repo add WZSpecRepo https://gitlab.***.com/v_wuzz/WZSpecRepo.git
二、创建源码库
1、打开gitlab地址,选择“Project”打开并创建一个源码库:
2、创建标准的CocoaPods Xcode工程
在终端执行如下命令可以自动生成标准的CocoaPods Xcode工程。
pod lib create WZUIKitModule
3、创建podspec文件
在终端执行如下命令可以自动在工程目录生成podspec文件。如果是通过命令创建的标准CocoaPods Xcode工程不需要通过命令创建podsepc文件。
pod spec create WZUIKitModule
podspec创建完成后需要修改相应的配置数据,下面是一个例子,具体可参考修改。
在这里插Pod::Spec.new do |spec|@[TOC](这里写自定义目录标题)
# ――― Spec Metadata ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
spec.name = "WZUIKitModule"
spec.version = "0.0.1"
spec.summary = "A short description of WZUIKitModule."
spec.description = <<-DESC
DESC
spec.homepage = "https://gitlab.***.com/v_wuzz/WZUIKitModule.git"
# spec.screenshots = "www.example.com/screenshots_1.gif", "www.example.com/screenshots_2.gif"
# ――― Spec License ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
# spec.license = "MIT (example)"
spec.license = { :type => "MIT", :file => "FILE_LICENSE" }
# ――― Author Metadata ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
spec.author = { "wzz" => "***@163.com" }
# ――― 源码路径 ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
spec.source = { :git => "https://gitlab.***.com/v_wuzz/WZUIKitModule.git", :tag => spec.version.to_s }
# ――― 源码目录 ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
spec.source_files = "WZUIKitModule/Classes", "Classes/**/*.{h,m}"
# ――― 资源文件 ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
# spec.resource = "icon.png"
# spec.resources = "Resources/*.png"
# ――― 依赖库 ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
spec.dependency "JSONKit", "~> 1.4"
end入代码片
4、本地较验podspec是否符合规范
为了保证podspce符合书写规范,需要在上传前在本地做一个初步的较验。
pod lib lint --verbose --use-libraries --allow-warnings
5、上传工程并创建一个正式的tag
将工程上传到刚刚创建的源码库。并创建一个正式的tag。
// 将工程上传到刚刚创建的源码库
git remote add origin "https://gitlab.***.com/v_wuzz/WZUIKitModule.git"
git add .
git commit -m "Initial commit"
git push -u origin master
// 生成一个初始的正式tag,方便将源码库推到私有库
git tag 0.0.1
git push --tags
6、验证远程podspec
注意:如果私库依赖私库加上source 'https://gitlab.***.com/v_wuzz/WZSpecRepo.git’在验证
pod spec lint WZUIKitModule.podspec --verbose --allow-warnings --use-libraries
三、将源码库推向私有库
将刚刚远程验证完成的podspec上传到私有库。
pod repo push WZSpecRepo WZUIKitModule.podspec --verbose --allow-warnings --use-libraries
四、Podfile绑定源
podspec上传完成后如果需要在工程中依赖某一源码库,需要在Podfile文件中添加源码库所指向的私有库。具体如下:
source 'https://gitlab.***.com/v_wuzz/WZSpecRepo.git'
lint时相关选项说明:
–allow-warnings:表示允许警告
–verbose:查看详细的验证过程来帮助定位错误
–use-libraries:表示使用静态库或者是framework