1. 在 github 上初始化仓库,并将仓库拉到本地。(此处不在赘述)
2. 创建 .podspec 文件进行配置
详细的配置请参考cocoapods 制作 Podspec 详解
使用终端工具进入本地仓库目录。
输入 pod spec create xxx.podpec 创建podpec文件(xxx为仓库名称)
得到一个前缀名称 .podspec的文件,可以将此文件拖至 Xcode 进行打开,或使用其他的编辑器进行打开
初次打开 .podspec 文件,在文件里头有相当多的 注释+配置信息,如果你是一个坚强的人的话可以全部浏览,进行分析。笔者建议直接删除,将需要配置的信息进行 copy,然后修改
Pod::Spec.new do |s|
s.name = 'xxx'
s.version = '0.0.1'
s.summary = '此处是库总结'
s.homepage = 'https://github.com/jiangkuoniu/xxx'
s.license = 'MIT'
s.authors = {'NJK' => '[email protected]'}
s.platform = :ios, '6.0'
s.source = {:git => 'https://github.com/jiangkuoniu/xxx', :tag => s.version.to_s }
s.source_files = 'Library/xxx/**/*'
s.requires_arc = true
s.dependency 'Masonry', '~> 1.1.0' //依赖其他网络第三方
s.dependency 'SDWebImage' //不指定版本号,多个依赖
s.framework = 'UIKit' '' //依赖本地库
end
{此处name与 .podspec 的名称一致}
copy 完之后,对配置进行对应的修改,修改完之后进行tag标记,然后上传至 github
重点( tag 标记上传至 github ):
此处默认以上操作完成(终端完成以下操作,前提路径在该仓库下).
1> git tag '0.0.1'
2>git push --tags
3>git push origin master //此处需要注意。注意分支名称
以上操作完成之后,输入pod lib lint 命令来查看你的.podspec文件是否配置成功。
此处如果出现红色警告,查找到 ERROR 处,查看对应的配置项,打开 xxx.podspec 进行相关修改
3. 发布到 Cocoapods 进行管理
这一步是最简单的了
终端中,在该仓库路径下,输入 pod trunk push 命令即可。(此处一定要确保库文件在程序中使用)
出现:
查找失败的处理
使用pod search *** 查找自己的库
删除本地的库缓存
rm ~/Library/Caches/CocoaPods/search_index.json
更新本地库 pod repo update
再次执行pod search ***
错误整理
1.error: 'Masonry.h' file not found with include; use "quotes" instead
当依赖其他第三方时。我们引用位置应该写全地址。#import
2.验证提交忽略警告
pod lib lint --allow-warnings
pod trunk push --allow-warnings
LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443
这里需要关闭掉所有的代理
git config --global --unset http.proxy
git config --global --unset https.proxy
查找不到自己新创建的库
删除本地的库缓存
rm ~/Library/Caches/CocoaPods/search_index.json
更新本地库 pod repo update(如果此条命令报错并且你的芯片是M系列的
sudo arch -x86_64 gem install ffi
)
再次执行pod search ***
如果还是不行————升级cocoapods
```
sudo gem install -n /usr/local/bin cocoapods --pre
pod setup
pod repo update
```
并不能一定可以,有时候pod会有延迟,可以等半小时后再刷新。
Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources
1.rvm get stable
2.brew update
3.brew doctor
4.brew install openssl
[!] Authentication token is invalid or unverified. Either verify it with the email that was sent or register a new session.
pod 推送的时候可能遇到问题
pod trunk register [email protected] username --description='描述信息' //需要发送邮件到你的邮箱去确认。完成之后即可push username和描述信息可以不写。
xcodebuild: Returned an unsuccessful exit code. You can use --verbose for more information
检查项目内是否报错,处理后。移除记录,重新提交。
pod repo remove trunk
[iOS] file patterns: The `source_files` pattern did not match any file(这个问题困扰了我很久。之前是没有这种问题的)
这个是由于pod路径下没有你的库文件
前往 /Users/你的用户名/Library/Caches/CocoaPods/Pods/External/你的项目名
将你的库文件夹拷贝到这个路径下,重新提交即可。
unknown: Encountered an unknown error (783: unexpected token at '{ "name": "Masonry", "version": "1.0.1", "license": "MIT",
sudo rm -rf ~/.cocoapods/repos
https://github.com/CocoaPods/CocoaPods/issues/9672