发布cocoapods
2016-04-28 17:33
363 查看
安装cocoapods
$ sudo gem install cocoapods
搜索库
$ pod search wechat
在git先新建一个repo
license的各大描述
cd 到当前目前下,并把相应的SDK commit上去
创建podspec
$ pod spec creat PodName
编辑podspec
Pod::Spec.new do |s|
s.name = "MagicWindowSDK"
s.version = "3.66.02"
s.summary = "MagicWindowSDK for Cocoapods convenience."
s.homepage = "http://magicwindow.cn/"
s.license = "MIT"
s.author = { "MagicWindow" => "support@magicwindow.cn" }
s.source = { :git => "https://github.com/magicwindow/mw-iossdk.git", :tag => "#{s.version}" }
s.platform = :ios, "7.0"
s.source_files = "MagicWindowSDK/*.{h,m}"
s.public_header_files = "MagicWindowSDK/*.h"
s.resource = "MagicWindowSDK/MagicWindow.bundle"
s.preserve_paths = "MagicWindowSDK/libMagicWindowSDK.a"
s.vendored_libraries = "MagicWindowSDK/libMagicWindowSDK.a"
s.requires_arc = true
s.xcconfig = {
'LIBRARY_SEARCH_PATHS' => '"$(PODS_ROOT)/MagicWindowSDK/MagicWindowSDK"',
'HEADER_SEARCH_PATHS' => '"$(PODS_ROOT)/MagicWindowSDK/MagicWindowSDK"'
}
s.frameworks = "AdSupport","CoreTelephony","CoreGraphics","CoreFoundation","SystemConfiguration","CoreLocation"
s.libraries = "z","sqlite3.0"
s.dependency "libWeChatSDK"
end
name:pod的名字,与工程名保持一致
version :不是工程的版本号,而是打的tag名字
license:与在新建repo的时候一致
requires_arc:是否支持arc
push podspec 到git
注册trunk帐号
$ pod trunk register your email 'your name'
然后你会收到一封邮件,点击确认
查询注册信息
$ pod trunk me
验证podspec文件的合法性
$ pod spec lint
或者用pod spec lint --verbose 可以看到执行的步骤
以上的命令执行后,不能有任何的error 和 warning,否则后面有会出现问题
将podspec push到cocoapods上
$ pod trunk push PodName.podspec
更新pod库
$ pod setup
------------------------------------------------------------------------------------
小贴士:
1.当trunk push后,pod search查找了一下,如果没有找到,使用setup进行库更新,然后再搜索即可
$ pod setup
2.如果setup进行库更新的时候,遇到CocoaPods was not able to update the`master`这样的错误,删除缓存,再setup即可
$ rm -fr ~/.cocoapods/repos/master
$ pod setup
3.开源发布之后,需要打上tag,否则pod trunk会失败
4.pod第三方库的时候,默认使用的是最大的tag,所以如果pod trunk的时候使用的tag比原来的小,那么pod默认使用的还是原来的版本
比如:old tag:1.33.9,new tag:1.6 ,这时默认使用的还是1.33.9的第三方库
$ sudo gem install cocoapods
搜索库
$ pod search wechat
在git先新建一个repo
license的各大描述
cd 到当前目前下,并把相应的SDK commit上去
创建podspec
$ pod spec creat PodName
编辑podspec
Pod::Spec.new do |s|
s.name = "MagicWindowSDK"
s.version = "3.66.02"
s.summary = "MagicWindowSDK for Cocoapods convenience."
s.homepage = "http://magicwindow.cn/"
s.license = "MIT"
s.author = { "MagicWindow" => "support@magicwindow.cn" }
s.source = { :git => "https://github.com/magicwindow/mw-iossdk.git", :tag => "#{s.version}" }
s.platform = :ios, "7.0"
s.source_files = "MagicWindowSDK/*.{h,m}"
s.public_header_files = "MagicWindowSDK/*.h"
s.resource = "MagicWindowSDK/MagicWindow.bundle"
s.preserve_paths = "MagicWindowSDK/libMagicWindowSDK.a"
s.vendored_libraries = "MagicWindowSDK/libMagicWindowSDK.a"
s.requires_arc = true
s.xcconfig = {
'LIBRARY_SEARCH_PATHS' => '"$(PODS_ROOT)/MagicWindowSDK/MagicWindowSDK"',
'HEADER_SEARCH_PATHS' => '"$(PODS_ROOT)/MagicWindowSDK/MagicWindowSDK"'
}
s.frameworks = "AdSupport","CoreTelephony","CoreGraphics","CoreFoundation","SystemConfiguration","CoreLocation"
s.libraries = "z","sqlite3.0"
s.dependency "libWeChatSDK"
end
name:pod的名字,与工程名保持一致
version :不是工程的版本号,而是打的tag名字
license:与在新建repo的时候一致
requires_arc:是否支持arc
push podspec 到git
注册trunk帐号
$ pod trunk register your email 'your name'
然后你会收到一封邮件,点击确认
查询注册信息
$ pod trunk me
验证podspec文件的合法性
$ pod spec lint
或者用pod spec lint --verbose 可以看到执行的步骤
以上的命令执行后,不能有任何的error 和 warning,否则后面有会出现问题
将podspec push到cocoapods上
$ pod trunk push PodName.podspec
更新pod库
$ pod setup
------------------------------------------------------------------------------------
小贴士:
1.当trunk push后,pod search查找了一下,如果没有找到,使用setup进行库更新,然后再搜索即可
$ pod setup
2.如果setup进行库更新的时候,遇到CocoaPods was not able to update the`master`这样的错误,删除缓存,再setup即可
$ rm -fr ~/.cocoapods/repos/master
$ pod setup
3.开源发布之后,需要打上tag,否则pod trunk会失败
4.pod第三方库的时候,默认使用的是最大的tag,所以如果pod trunk的时候使用的tag比原来的小,那么pod默认使用的还是原来的版本
比如:old tag:1.33.9,new tag:1.6 ,这时默认使用的还是1.33.9的第三方库
相关文章推荐
- 当孩子伸手向你要钱时,千万不能这样做,一辈子的阴影。
- 盲打练习
- 二进制数转化
- 十进制转化为十六进制
- 冲刺第九天
- GUI for git|SourceTree|入门基础
- 集合框架(List集合的特点)
- 设置UITextField输入小数点位数的限制
- Codeforces 236B Easy Number Challenge 【因子和】
- 设计模式二三事——单例模式
- Android之EditText属性详解
- Unity5.3.4以前的旧版本打包问题Xcode7.3编译问题 Error "unknown type name __declspec" after Xcode 7.3 upgrade
- Linux进阶之bash编程(函数及总结)
- oracle函数
- UIPopoverPresentationController -
- 微信公众平台
- 【leetcode】String——Restore IP Addresses (93)
- 一文读懂机器学习
- 2进制
- 16jinzhi