cocopods部署代码

公司好几个项目都有用到一个同样模块的代码,为了方便批量修改和方便集成,将代码部署到了cocopod上面,以下为步骤及踩过的坑;
部署到cocopod上面的代码可以满足:
以下所有操作均在翻墙环境下。

1,纯代码写的
2,内含xib搭建的UI
3,依赖第三方框架
4,内含图片等资源
5,至于storyboard有待验证。

以下为大致步骤:

[1] - 将想要托管的代码封装出来,并且保证封装出来的代码编译通过。
[2]- 在GitHub上建立代码仓,如下图:
建立Github仓库.png
[3]- 将上述建立的GitHub仓库CLONE到本地(客户端或者Git指令都行)
[4]- cd 到上述目录下,使用下列指令创建 .podspec文件
pod spec create xxxx(你的代码库名)
[5]- 使用xcode打开上述创建的xxxx.podspec文件,修改相关信息。
'[坑]':建议用xcode,我最开始用系统自带文本编辑器,老是报错。改成xcode之后编辑就好了。
s.name         = '代码库名'
s.summary      = '描述'
s.version      = '版本号,和提交代码realse版本保持一致'
s.license      = { :type => 'MIT', :file => 'LICENSE' }
s.authors      = { '你的名字' => '你的邮箱' }

s.homepage     = 'https://github.com/xxx/xxx.git'
s.platform     = :ios
s.ios.deployment_target = '8.0'
s.source       = { :git => 'https://github.com/xxx/xxx.git', :tag => s.version }

s.requires_arc = true
s.source_files = 'xxx/**/*.{h,m}'  这里**代表的是所有子文件夹,意思是xxx文件夹下所有子文件夹中的.h和.m文件
s.resources    = 'xxx/**/*.{png,xib,bundle}'意思是xxx文件夹下所有子文件夹中的.png和.xib、bundle文件

s.requires_arc = true
s.frameworks = 'UIKit','Photos','CoreLocation' 导入的系统库

s.dependency 'YYKit' 依赖的第三方库,如有多个,则写多行
s.dependency 'SDWebImage'
[6]- 所有文件导入好之后目录如下:
文件目录.png
[7]- 提交代码,打上TAG,注意:TAG要和上述.podspec中的s.version保持一致,包括以后每次修改代码,重新发布托管,都要修改.podspec中的s.version。
[8]- 使用命令 : pod spec lint xxxx.podspec --allow-warnings
检测.podspec文件是否有错误,如果报错,按照提示更改错误即可。
若.podspec无错误,则代码将被编译
编译完成之后,看到下图信息:
编译完成.png
如果是第一次提交。需要执行下列指令:
pod trunk register 这里写邮箱 '这里写名字' --description=' 这里写描述'
之后会收到一封邮件,按邮件内容链接点击即可。
[9]- 提交到CocoaPods
pod trunk push xxxx.podspec  --allow-warnings
提交成功,见图:
提交成功.png

此时,便可以建立一个测试Demo,使用pod update方式导入你的代码库了。