美文网首页
手把手教你用CocoaPods发布自己的开源库

手把手教你用CocoaPods发布自己的开源库

作者: xu_chen | 来源:发表于2018-07-25 17:39 被阅读0次

    前言

    文本将从零开始介绍如何使用cocoaPods发布自己的开源库

    第一步:注册Trunk

    1. 查看当前pod版本

      pod --version
      
    2. 如果未安装pod,需下载安装

      sudo gen install cocoapods      
      pod setup
      
    3. 查看自己是否注册过 Trunk

      pod trunk me
      

      如果输出您的邮箱信息等,说明您已经注册过了,无需重新注册

    4. 注册

      pod trunk register 您的邮箱地址@163.com "用户名" --verbose
      

      您的邮箱地址@163.com - 这里输入您的邮箱地址
      用户名 - 这里输入您的用户名

      注册完成后,会给您的邮箱发送一封邮件,您需要进入邮箱,打开邮件中的链接,完成验证即可

    5. 验证是否注册成功

      pod trunk me
      

      观察是否会输出用户信息,注册如果成功会打印出您的邮箱和用户名

    第二步:创建项目

    1. github上创建一个新项目

      1. 进入您的git账号,点击+, 选择 New Repository, 新建项目
      2. 输入项目名称(注意:这里的项目名是你要发布库的名字如 ChXAnimation 而不是你的工程名如ChXAnimationDemo)、填写描述,选择初始化一个 README 文件,选择 MIT 的授权文件
    2. Clone 到本地(使用 git 命令)

    打开终端,cd 到您想存放项目的地方,如文档文件夹

    cd ~/文档
    

    github 上复制刚创建项目的链接地址,例如: https://github.com/sunrisechen007/ChXCategorys.git

    clone

    git clone https://github.com/sunrisechen007/ChXCategorys.git
    
    1. 添加要发布的库内容,如需要发布 ChXCategory 这个文件夹里的文件,直接把该文件夹拖入当前项目根目录中

    第三步:配置信息

    1. 创建 .podspec文件,用以配置pod发布库的信息

      cd 到刚 cloen 的项目中 ,输入命令

      pod spec create ChXCategorys 
      

      上面ChXCategorys 是您要发布框架的名字,和 git 上项目的名称(https://github.com/sunrisechen007/ChXCategorys.git)保持一致

      注意这里的 podspec 文件名ChXCategorys 和您要发布库存放的文件夹 ChXCategory 是可以一样的

    1. 编辑 .podspec文件

      使用文本编辑工具打开刚建的 podspec文件,删除里面的默认代码,按照下面格式输入代码

       Pod::Spec.new do |s|
       s.name         = "ChXCategorys"
       s.version      = "0.0.1"
       s.ios.deployment_target = '8.0'
       s.summary      = “简介"
       s.homepage     = "https://github.com/zhangyqyx/ChXCategorys"
       s.social_media_url = 'https://www.baidu.com'
       s.license      = "MIT"
       s.author       = { "xuchen" => "xxx@163.com" }
       s.source       = { :git => 'https://github.com/zhangyqyx/ChXCategorys.git', :tag =>    s.version}
       s.requires_arc = true
       s.source_files = ‘ChXCategory/*'
       #依赖库,不能依赖未发布的库
       #s.dependency = 'AFNetworking' , 'SDWebImage'
      end
      

      下面是这些参数的意思,也很好理解,根据实际相应修改即可
      s.name -> 项目名 ,即使你要发布库的名字
      version -> tag 版本号(每次发布都需要修改
      ...
      s.source_files -> 这个是指定您要发布库的文件夹位置的,我这里是把文件都放在了 ChXCategory里了,后面的 /* 表示该文件夹里的所有文件,当然您也可以写成 *.{h,m}表示里面的所有 .h 和 .m 文件

      如果 ChXCategory 里又嵌套了一个文件夹,您可以使用代码 ‘ChXCategory/*','ChXCategory/*/*'
      目录图参考如下:

      mulu.png

    第四步:发布

    1. 上传到 github(使用 Git 命令行)

      将修改后的本地项目文件,提交到线上

      1. git add .  
       
      2. git commit -m "提交说明文字"
       
      3. git push origin master
      

      add 是将代码从工作区提交到暂存区, . 表示提交所有文件
      commit 是将代码从暂存区提交到版本库, -m后面需要填写更新日志
      push 是推送到远程主分支,您也可以推送到其它相应分支

    1. tag
      每次发布都得重新设置 tag

      1. git tag 1.0.0  
         
      2. git push --tags
      
      3. git push origin master
      

      可以使用 git tag查看当前存在的tag
      每次打完 tag 之后,记得要推送(push)到远程分支

    1. 验证 .podspec文件内容是否正确

      pod spec lint ChXCategorys.podspec --verbose  
      
      

      ChXCategorys.podspec 这就是您项目中新建的 podspec 文件,需替换成您的

    注意:
    如果验证出现错误,修改完成后,需要把修改完成后的项目重新提交到 git 上,打 tag每次验证都需要修改下版本号tag 要加 1 ,podspec文件里的 s.version 也加 1

    1. 可以发布啦

      当验证完成无报错时,下面我们就可以发布我们的库了

      pod trunk push ChXCategorys.podspec
      

      耐心等待一会儿,结果出现有 Congrats 时,说明您的库已经发布成功啦。

    2. 验证

      pod search ChXCategorys
      

      输入以上命令,如果可以搜索到的话,那么恭喜.
      如果搜索不到,出现如下错误提示

      [!] Unable to find a pod with name, author, summary, or description matching `xxx`
      

      而你确认已经发布成功的话,那么你可以

      1. 前往 资源库 去删除 cocoapod 缓存中的 search_index.json 文件,重新搜索一次再试试,有点慢,需要等待一会儿
      2. json文件路径: /Users/xx/Library/Caches/CocoaPods (xx是你的电脑账户名)

    使用

    进入到项目中,在 podfile 文件中添加 pod ChXCategorys (ChXCategorys您的库名),然后执行 pod install 就可以下载到您的库了

    相关文章

      网友评论

          本文标题:手把手教你用CocoaPods发布自己的开源库

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