CocoaPods
, 而后经过pod install
命令, 就能够集成框架到项目中了CocoaPods
还不是很了解的或者没有安装的童鞋, 可自行百度或者参考用CocoaPods作程序的依赖CocoaPods
项目的源码在Github
上管理,因此第一步咱们须要建立一个属于本身的仓库SourceTree
和GitHub
客户端, 固然也可使用终端命令上传git
管理工具咱们这里暂不赘述, 不懂得能够自行百度git
命令上传, 主要命令以下//cd到当前文件夹
// 建立本地仓库
git init
// 添加名称为origin的远程链接
git remote add origin '你的github项目地址'
// 将本地代码加入本地仓库里
git add .
// 提交修改到本地仓库
git commit -m '你的修改记录'
// 推送master分支的代码到名称为origin的远程仓库
git push origin master
复制代码
Cocoapods
依赖库的描述文件,每一个Cocoapods
依赖库必须有且仅有那么一个描述文件CocoaPods
搜索引擎知道你的代码的做者、版本号、源代码地址、依赖库等信息的文件pod spec create 框架名字
// 示例:
pod spec create TitanModel
复制代码
TitanModel.podspec
文件Sublime Text
或者Atom
打开该文件,里面已经有很是丰富的说明文档, 可是不少都是咱们不须要的Podspec
文件的编写格式可参考 Podspec Syntax Referenceios
核心框架和第三方库Pod::Spec.new do |s|
s.name = "TitanModel"
s.version = "0.0.1"
s.summary = "A short description of TitanModel."
s.description = "这是详细的描述, 可是字数要比summary的字数多, 否则上传的时候回有警告提示, 我这么说你能明白了吗?不明白的话我也没办法了"
s.homepage = "https://github.com/CoderTitan/TitanModel"
s.license = "MIT"
s.swift_version = "4.0"
s.author = { "CoderTitan" => "quanjunt@163.com" }
s.source = { :git => "https://github.com/CoderTitan/TitanModel.git", :tag => "#{s.version}" }
s.source_files = "Classes", "Classes/**/*.{h,m,swift}"
s.exclude_files = "Classes/Exclude"
end
复制代码
s.name
:名称,pod search
搜索的关键词,注意这里必定要和.podspec
的名称同样,不然报错s.version
:版本号,to_s
:返回一个字符串s.summary
: 项目简短的简介s.description
: 这个是详细的描述, 要注意的是字数要比summary
的长, 不然上传的时候可能会爆出警告s.homepage
: 项目主页地址s.license
: 许可证s.author
: 做者s.source
: 项目源码所在地址s.platform
: 项目支持平台s.requires_arc
: 是否支持ARC
s.source_files
: 须要包含的源文件s.public_header_files
: 须要包含的头文件s.ios.deployment_target
: 支持的pod
最低版本s.social_media_url
: 社交网址s.resources
: 资源文件s.dependency
: 依赖库,不能依赖未发布的库
source_files
写法及含义html
"TitanModel"
"Classes/**/*.{h,m}"
复制代码
*
表示匹配全部文件*.{h,m}
表示匹配全部以.h
和.m
结尾的文件**
表示匹配全部子目录tag
cocoapods
是依赖tag
版本的,因此必须打tag
,之后再次更新只须要把你的项目打一个tag
,而后修改.podspec
文件中的版本接着提交到cocoapods
官方就能够了TitanModel.podspec
文件中的版本号一致git tag "v0.0.1"
git push --tags
复制代码
Podspec
Podspec
修改完成后, 上传到服务器时, 咱们须要使用trunk
进行上传trunk
, 在注册trunk
以前,咱们须要确认当前的CocoaPods
版本是否足够新。trunk
须要pod
在0.33
及以上版本,若是你不知足要求, 须要从新安装pod
trunk
, 可参考官方文档Getting setup with Trunkpod trunk register 邮箱地址 '用户名' --description='描述'
// 示例
pod trunk register quanjunt@163.com 'CoderTitan' --description='macbook'
复制代码
执行该命令后, 你的邮箱会受到一封邮件, 可是邮件要到垃圾邮件中才能找到, 打开邮件找到邮件中的网址并打开ios
若是打开邮件中的连接和下面的页面同样, 则表示注册成功git
最后输入以下命令github
pod trunk push TitanModel.podspec
复制代码
时间较长,耐性等待,大概5-10分钟, 成功后结果以下json
Updating spec repo master
命令, 该命令主要就是更新本地的Specs
文件Shift+command+G
快捷键, 打开前往文件夹操做, 输入以下目录便可查看~/.cocoapods/repos/master/Specs
复制代码
pod search TitanModel
查看[!] Unable to find a pod with name, author, summary, or description matching `TitanModel`
复制代码
这是由于你的框架已经上传, 可是你的本地的搜索文件search_index.json
没有更新, 因此搜索不到, 能够执行下面命令删除search_index.json
文件swift
rm ~/Library/Caches/CocoaPods/search_index.json
复制代码
Shift+command+G
快捷键, 打开前往文件夹操做, 输入以下目录便可查看~/Library/Caches/CocoaPods/
复制代码
搜索成功bash
最后对上述涉及到的终端命令作一个简单的总结服务器
tag
git tag "v0.0.1"
git push --tags
复制代码
podspec
文件pod spec create TitanModel
复制代码
podspec
文件中的相关信息,有两个比较重要的地方s.source
和s.source_files
, 修改完成后, 验证是否有误pod spec lint TitanModel.podspec
复制代码
pod trunk
pod trunk register orta@cocoapods.org 'Orta Therox' --description='macbook air'
复制代码
trunk
pod trunk push TitanModel.podspec
复制代码
pod search TitanModel
复制代码