美文网首页
将自己的开源项目提交到CocoaPods

将自己的开源项目提交到CocoaPods

作者: Magician | 来源:发表于2018-01-14 15:47 被阅读14次

    制作第一个Pod时百度了好多,也在官网上看了很久,踩了很多坑才弄好。这里只记录一些关键步骤用于以后查阅(因为教程太多了)。

    创建仓库

    GitHub 上创建仓库的时候添加一个MIT License

    创建 podspec

    将自己的仓库克隆岛本地后要创建 podspec 文件,以DLKeyboardManager 为例,命令为 :

    cd  DLKeyboardManager
    pod spec create DLKeyboardManager
    

    然后要编辑 podspec 文件,可以使用终端来编辑(vim DLKeyboardManager.podspec),不过很不好用,我用的 Sublime Text

    podspec 文件中很多以 # 开头的文字,其实这应该是被注释掉的,可以选择性的编辑,其余的根据提示来填写,其中也有一些不必要的,注释掉就行。大体上是这个样子的:

    Pod::Spec.new do |s|
    s.name         = "DLKeyboardManager"
    s.version      = "0.0.1"
    s.summary      = "方便监听Keyboard的show和hide."
    s.homepage     = "https://github.com/TheForgottenProgrammer/DLKeyboardManager"
    s.license      = { :type => "MIT", :file => "LICENSE" }
    s.author       = "Dalang"
    s.platform     = :ios, "8.0"
    s.source       = { :git => "https://github.com/TheForgottenProgrammer/DLKeyboardManager.git", :tag => "#{s.version}" }
    s.source_files = "DLKeyboardManager", "DLKeyboardManager/**/*.{h,m}"
    s.framework    = "UIKit"
    end
    

    这里要注意的是 s.source_files,它关系到你的pod中的文件,所以一定要构建好你的文件目录结构。DLKeyboardManager的目录结构是这样的:

    1.png

    然后将自己的仓库添加标签和版本,提交到 GitHub :

    git add .
    git commit -m "0.0.1"
    git tag 0.0.1
    git push --tags
    git push origin master
    

    验证 podspec 文件

    很简单,就一句指令:

    pod spec lint DLKeyboardManager.podspec
    

    pod spec lint DLKeyboardManager.podspec --allow-warnings
    

    提交到Cocoapods

    第一次提交需要先注册,官方给出的例子为:

    pod trunk register orta@cocoapods.org 'Orta Therox' --description='macbook air'
    
    • orta@cocoapods.org
      邮箱,注册时成功后会给你发一封邮件用来验证。
    • Orta Therox
      用户名。
    • macbook air
      一个描述,这个描述很耐人寻味,才开始的时候百度到的教程写了一句“这里写描述”,我就随便写了一句,结果没通过,然后把官网上的指令粘上去,替换自己的邮箱和用户名,将“macbook air”改成了“macbook pro”,然后就通过了||-_-||。

    注册成功后提交:

    pod trunk push DLKeyboardManager.podspec --allow-warnings
    

    提交成功后可能会有延迟,可以执行:

    rm ~/Library/Caches/CocoaPods/search_index.json
    pod setup
    

    然后就可以搜索到了

    pod search DLKeyboardManager
    
    /*
    -> DLKeyboardManager (0.0.1)
       方便监听Keyboard的show和hide.
       pod 'DLKeyboardManager', '~> 0.0.1'
       - Homepage: https://github.com/TheForgottenProgrammer/DLKeyboardManager
       - Source:   https://github.com/TheForgottenProgrammer/DLKeyboardManager.git
       - Versions: 0.0.1 [master repo]
    */
    
    

    大功告成!

    删除和修改

    第一次操作的时候可能就成功了,但是之后发现里面有了喝多不必要的文件,需要修改,就按照上面的方式,调整仓库目录结构,修改 podspec 文件,重新提交新的版本。完美主义者可能不会允许这样的瑕疵,于是删除重新开始:

    pod trunk delete DLKeyboardManager 0.0.1
    


    参考:

    http://www.cocoachina.com/ios/20180112/21842.html

    https://www.jianshu.com/p/0e1d796b2a42

    https://www.jianshu.com/p/a1339d45a324

    http://www.cocoachina.com/ios/20160301/15459.html

    https://www.cnblogs.com/richard-youth/p/4704413.html

    https://www.jianshu.com/p/283584683b0b

    https://www.cnblogs.com/xzjxylophone/p/4956469.html

    https://www.jianshu.com/p/b5e5cd053464

    另外,Cocoapods的安装使用参考:

    Cocoapods整理(一)——安装Cocoapods

    Cocoapods整理(二)——使用Cocoapods

    Cocoapods整理(三)——编写podspec文件

    Cocoapods整理(四)——搭建Cocoapods私有库环境

    相关文章

      网友评论

          本文标题:将自己的开源项目提交到CocoaPods

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