pods本地私有库和远程私有库

1,820 阅读2分钟

本地私有库

  1. 码云创建私有库
git clone 码云地址 
  1. 新建testDemo项目,并添加podfile
  pod 'WaterLayout', :path => '../WaterLayout'

'../WaterLayout’:路径是相对地址

  1. 新建需要
    私有库的文件:WaterLayout
  2. 创建Podspec描述文件 cd ~/Desktop/ZWWaterCollectionView/WaterLayout pod spec create WaterLayout
  3. 最后打开WaterLayout文件夹中的WaterLayout.podspec, 修改对应的配置信息 可参考:发布开源框架到CocoaPods入坑指南 | TitanKing 本地私有库的写法:
Pod::Spec.new do |s|

  s.name         = "WaterLayout"
  s.version      = "0.0.1"
  s.summary      = "瀑布流"
  s.description  = <<-DESC
  '这是个瀑布流布局'
                   DESC
  s.homepage     = "wc"
  s.author             = { "www" => "2213139@qq.com" }
  s.platform     = :ios, "8.0"
  s.source       = { :git => "", :tag => "v0.0.1" }
  s.source_files  = 'Classes/*'

end

s.source的写法:'Classes/**/*’ *:通配符,Classes目录下的所有文件 **:Classes目录下的所有文件夹


远程私有库

  1. pod lib create xxx
  2. 新建远程私有库(码云)
  3. 修改spec文件
Pod::Spec.new do |s|
  s.name             = 'WaterLayout'
  s.version          = '0.1.0'
  s.summary          = '这是一个瀑布流模块'
  s.description      = <<-DESC
这是一个瀑布流模块,自定义FlowLayout
                       DESC
  s.homepage         = 'https://gitee.com/czwcn/ZWWaterCollectionView'
  # s.screenshots     = 'www.example.com/screenshots_1', 'www.example.com/screenshots_2'
  s.license          = { :type => 'MIT', :file => 'LICENSE' }
  s.author           = { 'www' => '221313162@qq.com' }
  s.source           = { :git => 'https://gitee.com/czwcn/ZWWaterCollectionView.git', :tag => s.version.to_s }
  s.ios.deployment_target = '8.0'
  s.source_files = 'WaterLayout/Classes/**/*'
end

s.homepage:码云所在的首页 s.source :下载的路径

// 将本地代码加入本地仓库里
git add .

// 提交修改到本地仓库
git commit -m '你的修改记录'

// 查看当前的远程连接
git remote
// 添加名称为origin的远程连接
git remote add origin '你的github项目地址'

// 在push之前, 查看spec是否配置有问题
// 验证本地spec文件是否有误
pod lib lint
// 验证远程spec文件是否有误
pod spec lint

// 推送master分支的代码到名称为origin的远程仓库
git push origin master

远程验证会验证tag, 而至此我们的tag还没有设置, 所以验证不会通过, 需要打标签

  1. 将自己的项目打成tag
// 查看当前的tag值
git tag

// 设置tag值
git tag "0.0.1"  

// 上传提交tag
git push --tags


// 删除标签相关命令
// 先删除本地再删除远程标签, 删除后需要重新打标签
// 删除本地标签
git tag -d 0.0.1

// 删除远程标签
git push origin :0.0.1
  1. 上传Podspec
  • 首先要注册trunk
pod trunk register 邮箱地址 '用户名' --description='描述'

// 示例
pod trunk register quanjunt@163.com 'CoderTitan' --description='macbook'
  • pod trunk push WaterLayout.podspec
  1. 测试自己的cocoapods 这是因为你的框架已经上传, 但是你的本地的搜索文件search_index.json没有更新, 所以搜索不到, 可以执行下面命令删除search_index.json文件

rm ~/Library/Caches/CocoaPods/search_index.json pod search WaterLayout

引用 发布开源框架到CocoaPods入坑指南 | TitanKing