![e42aa4da8d3fa36090182bde4c275764.png](https://i-blog.csdnimg.cn/blog_migrate/2d7a93084ac613f7d8b48e4a1c60764c.jpeg)
![e42aa4da8d3fa36090182bde4c275764.png](https://i-blog.csdnimg.cn/blog_migrate/2d7a93084ac613f7d8b48e4a1c60764c.jpeg)
![e42aa4da8d3fa36090182bde4c275764.png](https://i-blog.csdnimg.cn/blog_migrate/2d7a93084ac613f7d8b48e4a1c60764c.jpeg)
作者丨夏天然后
https://www.jianshu.com/p/15f0fc6002cc
前言:
给库添加Cocoapods支持, git方式
使用pod安装svn上的库
给库添加Cocoapods支持, 使用GitHub
- 首先写好一个要添加Cocoapods支持的库 这是我第一个添加Cocoapods支持的工具iOS7兼容自定义带动画的AlertViewController 你可以看看(https://github.com/summerxx27/XTAlertViewController)
- 注册trunk
// 升级至最新版本
$sudo gem install cocoa pods// 完成注册 邮箱和GitHub用户名字
pod trunk register 1005430006@qq.com 'summerxx27' --verbose // 之后点击邮箱链接进行验证
3 查看注册信息如图
pod trunk me
![12bc22b0d51a6b78b50e09aeb40033ba.png](https://i-blog.csdnimg.cn/blog_migrate/84f7608b6a80d2ba1c885255bb3ef2fa.jpeg)
// XTAlertViewController : 库名字
pod spec create XTAlertViewController
5 编辑文件 vim
vim XTAlertViewController.podspec
6 填写信息: 看名字就知道意思了. 具体还可以看官方文档 我的XTAlertViewController.podspec这个文件是这样写的, 或者找一个优秀的第三方, 模仿着写也是可以的
Pod::Spec.new do |s|
s.name = 'XTAlertViewController'
s.version = '1.0.1'
s.license = 'MIT'
s.summary = 'A view like UIAlertViewController on iOS.'
s.homepage = 'https://github.com/summerxx27/XTAlertViewController'
s.authors = { 'summerxx27' => '100543xxxxx@qq.com' }
s.source = { :git => 'https://github.com/summerxx27/XTAlertViewController.git', :tag => s.version.to_s }
s.requires_arc = true
s.ios.deployment_target = '7.0'
s.source_files = 'XTAlertViewController/*.{h,m}'
end
7 验证一下本地文件编写是否正确
pod lib lint XTAlertViewController.podspec
![f0df13ed25a8382b23571bd314e70e7e.png](https://i-blog.csdnimg.cn/blog_migrate/8d0e6c936ea947374664c2a4741d31c5.jpeg)
git tag '1.0.1'
git push --tags
9 把编写的文件告诉Cocoapods
pod trunk push XTAlertViewController.podspec
10 之后使用查找命令就可以看到了
![863bed434ac46bb2b030463af3c0945d.png](https://i-blog.csdnimg.cn/blog_migrate/e8eee098dd32005b0064586291f8cd67.jpeg)
库文件应该在仓库的第一层目录(具体如不清楚 你可以下载我文章开头提到的XTAlertViewController 看一下文件层级)
使用svn作为代码仓库
不同点在于 1、源代码的地址
s.source = { :svn => 'https://summerxxSVN:8088/svn/bench_ios/trunk/bench_ios_net', :tag => 'v1.3.91' }
2、在podfile使用
pod 'xxx', :svn => 'summerxxSVN:8088/svn/bench_ios/trunk/bench_ios_net/bench_ios’
3、使用安装
pod update --no-repo-update
4、可能会出错
![c6ae2a51ad56f54dc086dced5a23f635.png](https://i-blog.csdnimg.cn/blog_migrate/4d0f6b0539a5c9d3eafc266868c91854.jpeg)
svn checkout svn地址
![a55b5fabed22293a519c4ce3bd9ff54f.png](https://i-blog.csdnimg.cn/blog_migrate/76ba51abd83ce62212a7c7528b6f539b.jpeg)
- 大致的过程就是这个样子, 博主在尝试的时候 走了不少弯路, 昨天一直到凌晨也没有成功, 好在最后成功了, 按照这个步骤, 基本没有错误, .podspec这个文件如果填写正确的话.
- svn和git道理相似
推荐↓↓↓
![589c3b3eaa89e8a5bbbdb8faf3136ab0.png](https://i-blog.csdnimg.cn/blog_migrate/3fa42f7b8b9bdf88e738a10ddba70d86.jpeg)
长
按
关
注
?【16个技术公众号】都在这里!
涵盖:程序员大咖、源码共读、程序员共读、数据结构与算法、黑客技术和网络安全、大数据科技、编程前端、Java、Python、Web编程开发、Android、iOS开发、Linux、数据库研发、幽默程序员等。
![415b0ca0c33e5c20a0154812412fc511.png](https://i-blog.csdnimg.cn/blog_migrate/8b26ce1faa2f2a598c89d71b689a08e8.png)