手把手教你构建自己的CocoaPods仓库

来源:互联网 发布:单片机编程入门教程 编辑:程序博客网 时间:2024/06/04 22:18

CocoaPods简介

这里写图片描述

每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如Java语言的Maven,nodejs的npm。随着iOS开发者的增多,业界也出现了为iOS程序提供依赖管理的工具,它的名字叫做:CocoaPods。
CocoaPods项目的源码在Github上管理。该项目开始于2011年8月12日,经过多年发展,现在已经成为iOS开发事实上的依赖管理标准工具。开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和更新第三方开源库的时间。

Trunk的Register

第一次使用需要注册,需要cocoapods 0.33版本以上才支持。接下来的几个步骤需要提前注册好GitHub账号,否则无法使用。

  • 注册
pod trunk register xxx@gmail.com "abcd"

说明:xxx@gmail.com 是你的github账号,abcd 是作者名字,也就是你的名字。

  • 查询 pod 注册信息,以及发布过的Pods
pod trunk me

创建远程仓库

github上同样创建一个MyLib,最好保持同名,需要注意的是,在创建仓库的时候需要添加license类型,这里我使用license类型为MIT

  • 第一步

这里写图片描述

  • 第二步

这里写图片描述

拉取远程仓库到本地

  • 进入桌面
cd desktop

这里写图片描述

  • clone到桌面
git clone https://github.com/rs/MyLib.git

说明: https://github.com/rs/MyLib.git 是github上的git地址,这里随便举个栗子。

这里写图片描述

本地仓库创建自己的库文件

这里写图片描述

添加.podspec文件

依赖库所需的文件格式为.podspec格式,每个Pods依赖库必须有这个描述文件

cd /Users/iean/Desktop/MyLib 

说明: /Users/iean/Desktop/MyLib 是本地仓库文件,进入刚才clone到本地的仓库。

pod spec create MyLib

说明:这样就生成了MyLib.podspec文件,打开该文件添加内容,并删除不需要的:

Pod::Spec.new do |s|  s.name         = "Pod::Spec.new do |s|  s.name         = "MyLib"  s.version      = "0.0.1"  s.summary      = "我的代码库"  s.description  = <<-DESC       我的代码库                   DESC  s.homepage     = "https://github.com/rs/MyLib"  s.license      = "MIT"  s.author       = { "rs" => "rs@gamil.com" }  s.platform     = :ios,'6.0'  s.source       = { :git => "https://github.com/rs/MyLib.git", :tag => "#{s.version}" }  s.source_files  = "MyLib", "MyLib/MyLib/*.{h,m}"  s.framework    = "UIKit"  s.requires_arc = true  s.pod_target_xcconfig =  {        'SWIFT_VERSION' => '3.0',  }end

提交代码到github

git add .git commit -m "version 0.0.1"git push origin master
  • 打上标签
git tag 0.0.1git push --tags

说明:这里的 0.0.1是和.podspec文件中 s.version 一般是对应的。

  • pod 验证
pod spec lint

说明:如果有error,可以根据提示修改.podspec文件。

如果有以下提示

-> MyLib(0.0.1)Analyzed 1 podspecMyLib.podspec passed validation

恭喜你,你配置成功,只差最后一步的了。

提交.podspec

pod trunk push MyLib.podspec

这条命令做了如下三件事:

  • 验证本地的podspec文件,也可以使用 pod lib lint验证

  • 上传podspec文件到trunk服务

  • 将{project}.podspec文件转为{poject}.podspec.json文件

使用

可以通过下面的命令查找的自己制作的pod库

pod search MMLib

如果报警告说没有找到,那么你需要更新本地pod repo

执行如下命令:

pod repo update

协同升级完善

当需要其他人来共同维护你的代码,需要提供权限

pod trunk add-owner CLRollingCycleView xxx@163.com
原创粉丝点击