制作Pod库
- 执行 pod lib create projectName, 根据提示生成 pod 工程
pod lib create projectName
- 打开Example 里的示例工程, 在 pod 初始化文件中将 ReplaceMe.swift 替换成自己的源码
- 打开 .podspec 文件,编辑对应version,描述,私有库地址等
- cd 到含有 .podspec 文件的目录下, 执行以下 {code} 进行本地校验
pod lib lint --verbose --allow-warnings
或远程校验
pod spec lint --verbose --allow-warnings
- 验证通过后, 在远端创建一个代码仓库(github, gitlab等), 将代码上传上去, 根据 .podspec 中 s.version 对应的版本号, 给 master 打上对应的 tag
git tag -a 0.0.1 -m "0.0.1 release"
git push --tags
私有库
- 通过以下 {code} 将上述私有pod库关联到git源
pod repo add I18n_iOSSpec https://github.com/galenu/I18n_iOS.git
- cd 到含有 .podspec 文件的目录下, 通过以下 {code} 将 pod 库 push 到 git 源
pod repo push I18n_iOSSpec I18n_iOS.podspec --verbose --allow-warnings --use-libraries --skip-import-validation --sources='https://github.com/galenu/I18n_iOS.git,https://github.com/CocoaPods/Specs.git'
- 在目标项目的 Podfile 文件中加入git源,再更新pod
公有库
- 注册CocoaPods,已经注册过的不需要注册(可以跳过注册步骤)
- 怎么看自己有没有注册
pod trunk me
- 如果没有注册信息就需要注册了,注册的步骤:
- pod trunk register 邮箱 name --verbose
- 注册完之后,会向你邮箱发送一个链接,在邮箱中点击确认一下就可以了
// 加上--verbose可以输出详细debug信息,方便出错时查看。 pod trunk register 邮箱 name --verbose
- 发布:
pod trunk push I18n_iOS.podspec --allow-warnings
- push成功后,先用"pod search I18n_iOS"搜索,如果搜索不到,是因为没有添加进pod search缓存文件,删掉缓存重建即可!命令如下:
# 切换到CocoaPods目录
cd ~/Library/Caches/CocoaPods/
# 查看该目录下有Pods和search_index.json两个文件
ls
# 删除缓存文件
rm search_index.json
# 重新搜索
pod search I18n_iOS
- 使用:目标项目加入源,执行 pod repo update
# CocoaPods官方spec仓库
source 'https://github.com/CocoaPods/Specs.git'
# 私有spec仓库
source 'https://github.com/galenu/I18n_iOS.git'
pod 'I18n_iOS', :git => "https://github.com/galenu/I18n_iOS.git"