美文网首页小食私有pod
发布私有pod库的操作步骤以及用法

发布私有pod库的操作步骤以及用法

作者: zhouluyao | 来源:发表于2020-09-01 18:12 被阅读0次
    想要发布pod,要创建两个git仓库,一个用于存放要分享的源代码,一个用于存放podspec的版本信息

    总体思路:

    1、先创建一个仓库用于存放podspec的版本信息

    2、再创建一个目录用于存储组件源代码,在创建的源代码目录后使用pod创建一个发布源代码的模板,把要分享的代码放到ReplaceMe目录下

    3、编写podspec,在Example目录下的pod install,然后验证podspec的有效性

    4、然后把podspec push到用于存放podspec的版本信息的仓库,在使用到私有库项目的podfile添加source 获取podspec中源代码的仓库地址进行下载

    具体步骤:

    1、在git服务器创建一个ZGSpecs仓库(不要勾选README,如果用下面方式关联),在本地创建一个目录与存放podspec的版本信息的仓库关联起来

    //从命令行创建一个新的仓库
    touch README.md
    git init
    git add README.md
    git commit -m "first commit"
    git remote add origin https://github.com:99/zly/ZGSpecs.git
    git push -u origin master
    

    2、在 ~/.cocoapods/repos 添加私有repo,用于使用私有库的项目中通过pod install命令,下载私有库,最后验证添加私有repo的有效性

    pod repo add ZGSpecs https://github.com:99/zly/ZGSpecs.git
    //ZGSpecs为 ~/.cocoapods/repos 目录下repo名 , 后面的url为用于存放podspec的版本信息的仓库地址
    
    通过下面命令查看repo列表
    pod repo list
    
    验证repo的有效性
    cd ~/.cocoapods/repos/ZGSpecs   //ZGSpecs为创建的私有repo名
    pod repo lint  //验证远程是否通过
    

    3、在本地创建一个存放要分享源代码的目录,创建pod模板,根据提示创建,创建完成后会自动打开项目

    //1、在本地对应的目录执行创建模板
    pod lib create ZGKXCommonComponent 
    //2、把想要分享的(.h,.m)文件放在ReplaceMe.m 同级目录,删除ReplaceMe.m文件
    

    4、配置podspec包括 source_files、dependency、source、version等信息,若有子文件夹想要设置子模块,需要配置subspec,对编辑好的podspec进行验证,验证通过后与存放要分享源代码的Git服务器关联

    //1、配置podspec格式如下
    //pod名
    s.name             = 'ZGKXCommonComponent'
    //版本号
    s.version          = '0.0.1'
    //要分享源代码的仓库地址
    s.source = { :git => 'https://github.com:99/zly/ZGKXCommonComponent.git', :tag => s.version.to_s 
    //源文件地址
    s.source_files = 'ZGKXCommonComponent/Classes/**/*'
    //设置第三方库的依赖
    s.dependency 'FMDB', '~>2.7.2'
    //子模块
    s.subspec 'ZGConfig' do |s|
      s.source_files = 'ZGKit/Classes/ZGConfig/*'
      s.public_header_files = 'ZGKit/Classes/ZGConfig/*.h'
    end
    
    //2、找到Example下面的podfile文件进行pod install
    
    //3、验证podspec
    pod lib lint --allow-warnings  #本地验证,如果验证成功会提示ZGKXCommonComponent passed validation.
    
    //4、与存放要分享源代码的Git服务器关联
    git add .
    git commit -m "提交要发布的源代码"
    git remote add origin https://github.com:99/zly/ZGKXCommonComponent.git
    git push -u origin master
    

    5、提交当前代码的tag,tag版本号和podspec的 s.version两者必须统一

    git tag '0.0.1' && git push --tags  //每次提交更新都需要更新
    

    6、同步podspec信息到git服务器

    1、把最新的podspec版本信息同步给存放podspec信息的本地私有仓库repo
    2、同步给本地私有仓库repo后,本地的私有repo会把最新的podspec信息,push到用于存放podspec的版本信息的git服务器仓库中
    
    pod repo push ZGSpecs ZGKXCommonComponent.podspec --allow-warnings --verbose 
    // ZGSpecs为 ~/.cocoapods/repos目录下文件夹名
    // ZGKXCommonComponent.podspec为要分享代码目录下的文件
    // --verbose为显示执行详情
    

    7、组内成员如何使用发布的私有库?

    //1、组内成员想要使用你的私有库,需要用以下命令在~/.cocoapods/repos目录下添加ZGSpecs
    source 'https://github.com:99/zly/ZGSpecs.git' //在项目的podfile添加source获取仓库地址,下载代码
    source 'https://github.com/CocoaPods/Specs.git' //引用的cocoaPod源也需要指定,不然所有的第三方库都去ZGSpecs这个repo去找了
    
    //2、为了每次都是使用的最新的私有库代码,需要在pod install之前,执行下面命令检查是否私有库有更新
    pod repo update ZGSpecs --verbose #ZGSpecs是自己本地repo名称
    

    相关文章

      网友评论

        本文标题:发布私有pod库的操作步骤以及用法

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