zoukankan      html  css  js  c++  java
  • 使用Cocoapods创建私有库的流程

    在公司开发Framework,记录一下关于cocoapods制作私有库的过程:

    1、创建私有repo仓库,比如我的是 https://gitee.com/lishengpei/lspcustom-basic-repo.git,并初始化(设置开发语言,以及readMe)

    pod repo add LSPCustomBaseKit https://gitee.com/lishengpei/lspcustom-basic-repo.git

    这条指令:会在~/.cocoapods/repos目录下看到 LSPCustomBaseKit 文件夹了,第一步完成,这一步通常只需要执行一次。(这个命名没有过多要求)

      

    2、创建Pod项目的文件

    首先cd到你想创建项目的文件夹执行如下操作,记住一定要创建一个单独的名字,否则以后pod search <私有库> 会找到Github上跟你重名的项目

    pod lib create LSPCustomRepo
    这条指令:会在本地创建一个workspace工程,终端中输入你的开发语言比如: ObjC,是否需要测试demo,Yes即可。其他选None, 可根据自己需要。然后自动打开创建的工程。
    接下来就是在你的LSPCustomRepo 文件夹下添加自己的内容,将自己的组件代码部分放在 LSPCustomRepo/Classes下。

     2.1  同样需要在远端创建一个仓库,仓库名称和pod项目仓库名称相同,比如 https://gitee.com/lishengpei/LSPCustomRepo.git,然后将本地的pod工程push到这个远程仓库上,具体操作如下:

    git add .
    git commit -m "init library"
    git remote 查询远程仓库是否存在,下面添加一个远程仓库。 git remote add origin https://gitee.com/lishengpei/LSPCustomRepo.git git push origin master

     2.2 如果远程仓库已经存在,需要拉下代码

    git pull origin master --allow-unrelated-histories

    如果有冲突,就解决下冲突, 解决之后,push代码。

    3, 因为podspec文件获取版本控制的项目需要tag号,所以还要打上一个tag, 给本次提交打上tag 

    git tag -a 1.0.0 -m "1.0.0"
    git push --tags     #推送tag到远端仓库

    4, 做完这些之后开始编辑podspec文件,填上对应的信息。

      s.source     s.description    s.version 根据项目结构,填上适当的内容

    5, 本地测试podspec文件

    自己可以创建一个新项目,在Podfile中指定自己编辑好的podspec文件,如下:(两种方式填写一种就行)

    pod 'LSPCustomRepo', :path => '~/Desktop/LSPCustomRepo'      # 指定路径
    # pod 'LSPCustomRepo', :podspec => '~/Desktop/LSPCustomRepo/LSPCustomRepo.podspec'  # 指定podspec文件

    然后执行pod install命令安装,然后打开项目发现库文件已经被加载到Pods子项目中了,不过没有在Pods目录下,而是在Development Pods/LSPCustomRepo 目录下,因为是本地测试项目,没有吧podspec文件添加到Spec Repo中的缘故

    确认无误后,就可以提交podspec到Spec Repo中了, 提交很简单,只需要一个命令:

    pod repo push LSPCustomBaseKit LSPCustomRepo.podspec --use-libraries --allow-warnings
    #前面是本地Repo名字 后面是podspec名字

    没有错误之后,就可以在~/.cocoapods/repos/LSPCustomBaseKit 目录下看到自己的私有库了,同时我们远程的Spec Repo也有一次提交,已经被自动push上去了。

    可以用 pod search LSPCustomRepo  查看自己的库了, 如果搜不到,那么删除缓存:~/Library/Caches/CocoaPods/  删除该路径

    至此,自己的私有库就算制作好了。

    6、使用制作好的Pod

    在Podfile文件中,内容如下:

    source 'https://github.com/CocoaPods/Specs.git'  # 官方库
    source 'https://gitee.com/lishengpei/lspcustom-base-kit.git'   # 私有库
    
    platform :ios, '8.0'
    
    target 'TargetName' do
    pod 'AFNetworking', '~> 3.0'    
    pod 'LSPCustomRepo', '1.0.0'   #自己的私有库
    end

    详情参考: http://blog.wtlucky.com/blog/2015/02/26/create-private-podspec/

  • 相关阅读:
    [转载]HashSet的存储机制
    Java基础加强
    [转载]JDK的动态代理深入解析(Proxy,InvocationHandler)
    Java语言基础Html
    Java语言基础JavaScript
    多线程数据与控制同步
    Expression Tree Basics表达式树基础
    调试优化利器ASP.NET 跟踪
    css position relative ,absolute ,float
    .net date /日期格式化
  • 原文地址:https://www.cnblogs.com/dashengios/p/14043670.html
Copyright © 2011-2022 走看看