美文网首页
将git上(private库)的SDK托管到cocoapods

将git上(private库)的SDK托管到cocoapods

作者: 枫叶情结 | 来源:发表于2019-03-11 23:11 被阅读0次

    一、前期准备

    1、注册github账号

    2、注册cocoapods账号

    发布到cocoapods上你需要有一个pod 的账号,可以终端使用pod trunk me来查看自己的账号信息,如果没有账号的话需要先注册一下,命令如下:

     pod trunk register 8******2@qq.com  "用户名"
    

    这时候邮箱会收到一封邮件

    1876376-1de21cc35557ef72.png.jpeg
    打开这个地址就可以验证成功了,此时再输入命令pod trunk me就可以看到自己的账号信息了
    1876376-871381f5d1fb06d2.png.jpeg

    3、创建SSH,并配置电脑和git上的SSH

    1、终端输入命令ls -al ~/.ssh ,检查是否有id_rsa.pub或者id_dsa.pub存在,如果不存在,则创建。如下所示,则存在

    13BE5461-3123-4263-AA9B-42C6AB12C8E6.png
    2、创建SSH,终端输入ssh-keygen -t rsa -C "8******2@qq.com"
    连续回车即可,也可能会让你输入密码,密码就是你的开机密码
    456D7DF1-9AAF-4482-A843-F97FDA620640.png

    3、拷贝SSH Key
    终端输入pbcopy < ~/.ssh/id_rsa.pub

    4、将SSH Key添加到git
    点git头像 -- Settings -- SSH and GPG keys -- New SSH key


    1876376-9b8515a19371ac1d.png.jpeg
    1876376-a59f43876c3268e6.png.jpeg

    二、开工

    流程:

    Github上创建存储库 -- 配置SSH -- 将项目clone到本地 -- 将要托管的SDK放到clone下来的文件里面 -- 创建.podspec文件 -- 将文件上传到git上 -- 编辑.podspec文件 -- 验证.podspec文件合法性 -- 更新到git  -- 提交到pods
    

    1、在Github上创建存储库(前提是的有一个Github账号,如果没有就注册一个)

    36EA9B82-BC88-4021-9266-F3043894930C.png

    2、将项目clone到本地

    git clone https://github.com/Hokingtion/HJQPrivateFramework.git
    
    clone.png

    3、将要托管的SDK放到该项目中

    FBE78A6C-ADCF-4FD3-BDDF-D6A091F7187B.png

    4、创建podspec文件

    使用终端cd到工程文件的目录中,在README.md文件所在的位置创建一个podspec 文件

    pod spec create HJQPrivateFramework
    
    创建podspec文件.png

    创建成功后文件夹会多出一个.podspec文件


    podspec文件.png

    5、将以上文件push到git上

    cd 到.git仓库的同级目录
    git add .
    git commit -m "注释说明comment log"
    git push
    git tag 0.0.1
    git push --tags
    

    成功后会在终端见到以下内容


    提交文件到git.png

    到git上可以看到提交的内容


    E32CC9E7-E234-4BE3-AC04-9CEA6E655838.png

    6、编辑.podspec文件,该文件主要是配置一些项目到Pods的参数(重要)

    终端cd到podspec文件,执行以下命令,打开podspec文件并编辑

    vi HJQPrivateFramework.podspec
    

    podspec文件内容如下:

    Pod::Spec.new do |s|
      s.name = "HJQPrivatecFramework"
      s.version = "0.0.1" #切记要和Git提交的版本号一致
      s.summary = "Test for HJQPrivatecFramework."
      s.description  = "随便写点什么,这里的描述必须比上面的summary长,否则报警告,不行你可以试试" #这里的描述必须比上面的summary长,否则报警告
      s.homepage = "https://github.com/Hokingtion" #填写git主页地址
      #特别重要,这就是上面提到的新建Git项目的时候,初始化需要选择的LICENSE,没有这个提交会报错
      s.license = { :type => "MIT", :file => "LICENSE" }
      s.author = { "HJQ" => "876508602@qq.com" }
      #平台、系统版本必填,否则会报osx相关的警告,也是提交不了,前面打包Framework的时候提到的重要性
      s.platform = :ios, "8.0"
      s.source = { :git => "https://github.com/Hokingtion/HJQPrivatecFramework.git", :tag => "0.0.1" }
      #特别重要,这里边的.h或者.m文件不能只是配到.framework,否则找不到,报错
      s.source_files  = "Lib/WebMonitorSDK.framework/Headers/*.{h}"
      #特别重要,这里必须配置,否则上传成功,找不到.framework,只有头文件
      s.vendored_frameworks = "Lib/WebMonitorSDK.framework"
    end
    

    7、编辑完需要验证.podspec文件是否合法

    终端执行命令

    pod spec lint
    

    这边验证基本上是会出错的,针对报的错一条一条改吧
    最后检验通过如下:


    验证你的 podSpec.png

    8、更新podspec文件到git

    git add .
    git commit -m "更新podspec文件"
    git push
    
    提交文件到git.png

    9、创建repo

    终端输入pod repo list,查看当前是否有创建repo,正常是没创建终端输出如下:

    创建repo前.png
    则创建repo,终端输入pod repo add repo名称 私有库git地址
    创建repo.png
    创建后,再次输入pod repo list查看,创建的repo已经存在
    创建repo后.png

    10、添加.podspec文件到刚才建的私有repo

    pod repo push HJQPrivatecFrameworkRepo HJQPrivatecFramework.podspec
    
    添加你的podSec到你的私有repo.png
    到此,已经完全建成Cocoapods 私有库了。

    三、使用

    1、接下来,到测试工程添加podfile文件


    podfile.png

    要在podfile 里添加souce

    source 'https://github.com/Hokingtion/HJQPrivatecFramework.git'
    source 'https://github.com/CocoaPods/Specs.git'
    

    其中
    https://github.com/Hokingtion/HJQPrivatecFramework.git 是我自己私有库位置。
    https://github.com/CocoaPods/Specs.git 是公共库位置。
    注意: 添加私有库时,公共库必须添加source中。否则公有库不能用。

    2、配置好podfile文件后,在终端pod install

    AFC61718-9E38-45F7-AB04-EF3ADF99EFB5.png
    3、运行测试工程,点击APP上”启动SDK“按钮,Xcode输出:启动SDK
    成功.png

    成功了

    相关文章

      网友评论

          本文标题:将git上(private库)的SDK托管到cocoapods

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