终于有时间写篇文章了,其实主要是自己记录一下,免得以后忘了每次都Google有点麻烦
- 首先你得有一个GitHub账号,如果没有可以点这里去注册
- 还有电脑cocoapod这个是必不可少的了吧,如果你还是没有,可以点这里去配置
- 最后你还需要一个sourceTree,如果还是没有,点这里去下载
- 既然所有东西都准备好了,那就把你准备上传的东西准备好,接下来开始上传
先进到你的GitHub账号,选择new repository,会进入到以下界面
![](https://img.haomeiwen.com/i2421274/4e95b04a7884e157.png)
很多教程都叫把这里勾上,但是不勾上会方便很多,至于为什么,下面在揭晓
这样就创建好了,现在的仓库还是空空如也
![](https://img.haomeiwen.com/i2421274/a7beba94d944ca2e.png)
创建好了仓库之后就先不管它了,我们先去配置好项目再说
- 打开终端,cd到你想要把项目存放的目录下面(以下直接说develop)
- 输入 pod lib create 你的项目名(创建仓库时候填的name,下面直接写CMPushNotificationService)
- 然后就会出来下面的那些选项,用来干什么的都注释了一下
-
第四个和第五个相当于你创建项目是问你是否需要Unit Tests和UI Test,如果你第三个是否创建Example选择NO就不用管啦
3.png
-
填写完之后回车,会提示你完成了,这时候你就会发现在develop文件夹里多了个文件,这行代码自动帮你创建好了Example(cocoapod)和LICENSE、README和podspec,所以之前创建仓库的时候不要在仓库里面创建,以免之后上传的时候还要解决冲突,当然如果你不闲麻烦也是可以的
4.1.png
这个时候打开Example里面的Profile,它已经将Example路径改为本地的了
![](https://img.haomeiwen.com/i2421274/be935fabc5fc9167.png)
这个时候你需要做的就是把你要上传的代码放到CMPushNotificationService/Classes里面,把里面那个文件替换掉就好了(你会发现文件名都起得很易懂)
![](https://img.haomeiwen.com/i2421274/56680c079d9ed62a.png)
如果只是简单的分类的话也直接拖进来就好了,而且这里的文件关乎着podspec里面怎么写。现在先假装都弄进来了,到下一步
打开文件夹下的CMPushNotificationService.podspec,这个文件是干什么的就不做解释了,我也很菜的,不过可以Google一下
![](https://img.haomeiwen.com/i2421274/faf3b07070336aa4.png)
- 区域一是一些简单的配置,看名字就知道了,版本啊、地址啊、描述什么的都是在这里修改,最好把 :tag后面的改的和我的一样~
- 区域二就是配置文件的,让它能找到你对应的文件的地方,还有加依赖。(因为这个项目是分模块了,所以这里比较复杂,如果你的只是简单的一个分类或者Classes里面包含了所有文件,那直接用区域4就好了,区域2和区域3都可以忽略)
- 区域三主要是添加frameworks、libraries,
这里会加 s.xcconfig = {'VALID_ARCHS' => 'arm64 x86_64',} 是因为极光的问题,不加这个你会发现当你做完准备验证的时候是通不过的
到这里就即将完成配置了,接下来需要在当前文件下,按Shift+Ctrl+. 显示隐藏文件,需要去修改gitignore文件最后一行,以防首次pod的时候找不到路径
![](https://img.haomeiwen.com/i2421274/10d476affd7a0d71.png)
![](https://img.haomeiwen.com/i2421274/a098cd16b947ff87.png)
到这里总算是大功告成一大半了,接下来进入Example里面,pod update一下,完成之后打开项目,这里就把你刚才放在Classes里的文件导入进来了
![](https://img.haomeiwen.com/i2421274/4d9ab7e21187c622.png)
如果要修改或者后续需要更新,只需要在Example里面修改区域一里的代码,然后pod update就把代码改好了。
当然Example主要还是让我们添加一个例子嘛,大家可以在这里面引入你的库然后写个例子,记得第一次如果import不了,把项目调试好了直接在模拟器上运行一下,接下来完成所有代码之后就剩上传了
接下来回到终端,cd到项目目录
输入 pod lib lint --allow-warnings 如果有error的话重新输入 pod lib lint --allow-warnings --verbose打印错误,然后修改就好了
出现绿色的passed validation就是验证成功了
马上就搞完了,搞定就可以下班了
打开SourceTree,新建->添加已经存在的本地仓库->选择你的文件->创建,双击打开仓库,仓库设置->远程仓库->添加->确认。这样就把你的远程仓库和刚才创建的那个文件连起来了,然后设置仓库->远程仓库,把GitHub的仓库地址连过来,然后把当前所有改动保存,最后修改完之后合并到master上,打上标签(标签与项目pod版本相同),然后推送到远程master,成功之后就可以进行下一步了,这时候你打GitHub是这样的
![](https://img.haomeiwen.com/i2421274/f4bf0d26761da6f2.png)
- 然后就是注册cocoapod账号,如果有的可以直接跳过这一步
- 终端输入 pod trunk register 邮箱地址 ‘用户名’ --description='描述信息'
- 去你邮箱点击一下,就会告诉你注册成功了
- 输入 pod trunk me,有你的信息则说明登陆成功
- 然后cd到项目目录 输入pod spec lint --allow-warnings,一样的有问题加个 --verbose查看问题然后解决
- 最后 pod trunk push CMPushNotificationService.podspec --allow-warnings (中间填你自己的项目名)
- 成功之后pod search查看,如果失败还是打印问题,然后对应解决,如果不知道怎么解决,可以点这里
success.png
最后,谢谢大家阅读,演示的项目是封装的极光和信鸽推送,里面有Example演示怎么使用的,很简单,这里是GitHub地址,走过路过给个👍吧
这种是标准格式(格式是模版,不用自己辛苦创建,只需要修改),也有简单模式(所有东西得自己创建),在简书里找的一片文章,可以点这里去查看
qq群:515385179
如有意见建议,请在下方留言~
另外加个广告,推荐几个自己GitHub项目,希望多几个星星
UILabel分类,使用简单,动画改变label数值
对极光推送和信鸽推送的封装,统一调用,简单易懂
对MJRefresh二次封装,让代码更清晰
封装的一个二维码扫描器
登陆、支付、分享(待完善)功能封装
这是我的GitHub首页
网友评论