美文网首页
CocoaPods- 私有库

CocoaPods- 私有库

作者: lxl125z | 来源:发表于2017-02-24 16:04 被阅读0次

参考文章:创建私有库

一、创建代码私有库

1、把代码托管到git托管平台上,国内免费私有仓库

两种方式:1、远程先创建仓库clone到本地,2、直接创建push到远程

2、将代码托管在SVN上

使用:cocopods管理svn创建本地私有仓库

当公司的代码服务器为svn的情况下,一般用CocoPods创建私有库的时候,都是将CocoaPods创建出来的代码上传到公司的svn服务器,并且打上tags,然后将文件的配置信息文件.podspec上传到coding.net或者oschina.net网站上的私有库上,就是说.podspec是单独保存在git服务器上的。当版本信息更新时,代码提交到 svn服务器,.podspec文件也需要重新push更新。如果使用这种方法创建的私有库,和Cocopods管理AFNetworking这种共有库的原理基本一样,我们在使用所需要的库的时候,只需要在工程中的podfile中参考:引用私有库:第一种方式,通过source,当全部使用的是svn服务器时。podfile中 pod 'YDKit/Services',:svn =>"svn://192.168.111.222/ios/common/YDKit":tag=>‘版本号’`

上述方式都需要 将Podspec中的 s.source设置为SVN地址:
s.source = { :svn => "svn://xxxx/YDKit/", :tag => "#{s.version}" }

ps:完全使用svn存在的问题: 当我们的库需要依赖其它的库,刚好这些库都是svn上的私有库的时候就会出错。解决方式

二、创建项目的Podspec索引文件

注意:创建在项目的根目录

1、创建命令: pod spec create projectName (终端尽量先cd到桌面)

ps:也可以直接复制成熟的代码CocoaPods- Github公有库

2、验证Podspec文件的有效性

cd ~/Desktop/TestSwift
//可以使用下面。显示具体问题。以及忽略所有警告
pod spec lint TestSwift.podspec --verbose --allow-warnings

3、本地测试Podspec文件

platform :ios, '7.0'

target 'TestSwift' do
pod 'TestSwift', :path => '~/Desktop/TestSwift'  # 指定路径
#pod 'TestSwift', :podspec => '~/Desktop/TestSwift/TestSwift.podspec'  #指定podspec文件
end

三、向仓库提交私有的podspec

1.新建一个我们保存podspec文件的远端仓库

和建立私有代码仓库是一样的

2、给cocoapods添加私有repo
终端输入:

TestSwift是本地仓库的一个名字,(应该可以随便起一个)
后面的https是仓库的地址
pod repo add LxlPodspec https://git.coding.net/TestSwift.git

会在本地创建一个存放私有库的文件夹

查看是否添加成功:

pod repo list
可以看到“LxlPodspec是本地仓库的一个名字”

将TestSwift.podspec文件添加到podspec远端仓库和本地repo/JYPod里

//两个参数:添加的第一步添加的文件夹名 LxlPodspec
  将要添加的Podspec路径

pod repo push TestSwift /Users/liuxiaoliang606/.cocoapods/repos/TestSwift/JYPodTest.podspec --allow-warnings

这个命令有两个作用:
第一:在本地repo/JYPod仓库添加我们的podspec文件
第二:在我们的远端存放podspec仓库里push最新的podspec文件

四、引用私有库

1、通过podspec文件引入

2、通过git地址引入

#第一种方式(需要在本地添加私有repo)
source 'https://github.com/CocoaPods/Specs.git'
source 'https://git.coding.net/lxl125z/LXLPodspec.git'
platform :ios, '8.0'
use_frameworks!

target 'PodTest' do
    pod 'TestSwift'   
end


#第二种方式
platform :ios, '8.0'
use_frameworks!

target 'PodTest' do
 # pod 'TestSwift', :git => 'https://git.coding.net/lxl125z/TestSwift.git' 
end


五、更新私有库

1、修改代码推送到仓库

2、添加代码的tag并push到仓库

ps:测试的时候也可以不设置tag,直接设置到仓库地址,但是不好标记

3、修改podspec文件的s.version版本号,然后再次调用

//两个参数:1、添加的私有repo名(可以通过pod repo list查看)  
          2、将要添加的Podspec路径
pod repo push coding-lxl125z-lxlpodspec /Users/liuxiaoliang606/Desktop/TestSwift/TestSwift.podspec --allow-warnings

本地和云端会出现新建版本的文件夹

六、项目其他人使用

将远程的私有Specs仓库Clone到本地

$ pod repo add  [SpecRepoName]  [GitAddress]
# clone 到 .cocoaPods 目录下 添加私有仓库到本地
$ pod repo add coding-lxl125z-lxlpodspec https://git.coding.net/lxl125z/LXLPodspec.git
# 更新私有库资源
$ pod repo update coding-lxl125z-lxlpodspec
# 查询本地是否有对应的项目库
$ pod search TestSwift

相关文章

  • CocoaPods- 私有库

    参考文章:创建私有库 一、创建代码私有库 1、把代码托管到git托管平台上,国内免费私有仓库 两种方式:1、远程先...

  • CocoaPods-发布私有库

    一、发布代码到CocoaPods的步骤 1.创建两个仓库,一个是代码仓库A,一个是存放podspec文件的仓库B。...

  • cocoapods-发布组件库到私有索引库spec

    相关:发布组件库到cocoapods trunk[https://www.jianshu.com/p/58d713...

  • iOS组件化开发远程私有库

    一、本地化私有库 工程创建好之后可以用作本地私有库,通过path来引入本地私有库 二、远程私有库 创建远程私有库,...

  • 创建私有库

    Part1私有索引库(存放.podSpec文件) 私有索引库分为本地私有索引库和远程私有索引库。 本地索引库 可以...

  • 组件化(第二篇)

    组件化 一、本地私有库方案优化二、远程私有库三、如何使用远端私有库四、远程私有库的升级五、远程私有库依赖问题六、远...

  • [iOS模块式开发]例讲如何制作一个CocoaPods私有库

    10月23日更新 私有库A与私有库B之间的依赖处理:例如私有库B依赖于私有库A,在私有库B本地验证时: 会报错,提...

  • 创建pod私有库

    iOS创建私有库 1. 新建私有库 2.命令行创建本地私有库索引和远程私有库索引关联 pod repo add S...

  • iOS创建私有库

    iOS创建私有库 创建本地私有库索引和远程私有库索引关联 pod repo addSGSpecshttp://12...

  • iOS--本地私有库和远程私有库(三) --- ⅰ

    (三)敲重点!!远程私有库来了! ⅰ.远程私有库演示(本篇) ⅱ.远程私有库升级+优化 铺垫一:Category文...

网友评论

      本文标题:CocoaPods- 私有库

      本文链接:https://www.haomeiwen.com/subject/bnywwttx.html