在GitHub上发布iOS开源框架

本文主要描述如何在GitHub上发布自己写的可通过CocoaPods安装的开源框架
首先你需要一个GitHub账号~这就不说啦,直接开搞吧。

1. 创建本地项目

  • 打开命令行,进入你需要创建项目的文件夹下
cd /Users/sure/Desktop/iOS/XASpec
  • 创建工程
pod lib create XAGuidePage 
在GitHub上发布iOS开源框架_第1张图片
根据提示,生成pod工作模板
  • 打开项目文件夹里面的Example文件夹下的工程,可以看到pods里面,有个ReplaceMe的文件,意思就是替换它,换成我们自己需要对外提供的类。


    在GitHub上发布iOS开源框架_第2张图片
    工程结构
  • 右键show in finder,在finder中将我们自己的类复制进去,删掉ReplaceMe


    在GitHub上发布iOS开源框架_第3张图片
    操作截图
  • 关掉项目,打开命令行,cd到XAGuidePage文件夹下的Example文件夹下,执行
pod install
在GitHub上发布iOS开源框架_第4张图片
操作截图

重新打开项目,就能看到文件出现Pods下的Development Pods下面啦


在GitHub上发布iOS开源框架_第5张图片
操作截图

可以通过以下方式添加依赖,注意:如果是发布到GitHub上的库,它依赖的库,必须是在GitHub上发布的,不可以依赖本地库


在GitHub上发布iOS开源框架_第6张图片
添加依赖

在GitHub上发布iOS开源框架_第7张图片
添加依赖
  • 然后再Example文件夹下执行,即可添加依赖
pod install

安装依赖库

  • 到这一步,本地库就已经基本完成啦(如果只是制作本地pod库的话看到这里就可以了,如果想要引用这个本地pod库,将本地库复制到你工程文件下,在主工程Podfile里面加入pod 'XAGuidePage', :path => './XAGuidePage'即可,注意引用时不要采用绝对路径来引用,这样别人拉取代码执行pod install时会出问题,应该采用相对路径的形式引用,这里path的值应该填写本地库podspec文件所在的文件夹,../上层文件夹,./本层文件夹(即Podfile所在文件夹),自己填写一下路径执行pod install即可)

接下来就是在GitHub上创建项目,然后将它们关联起来


在GitHub上发布iOS开源框架_第8张图片
创建仓库

在GitHub上发布iOS开源框架_第9张图片
复制仓库地址,准备将代码push上去
  • cd到项目下,注意是项目下,不是工程下
cd /Users/sure/Desktop/iOS/XASpec/XAGuidePage

执行

git init
git add .
git commit -m "init"

将本地代码与远程仓库关联

git remote add origin https://github.com/SSSure/XAGuidePage.git

开始提交

git push origin master
在GitHub上发布iOS开源框架_第10张图片
提交成功

刷新一下GitHub上面的仓库就能发现已经提交上去啦


在GitHub上发布iOS开源框架_第11张图片
截图

如果只是远程托管的话,那到这一步就结束了,如果想在CocoaPods里面被别人搜索到并引用,还需要下面的步骤~

  • 增加podspec文件
    进入项目下,执行
git tag 0.0.1
git push --tags

刷新一下Github上的项目,会看到多了一个release分支


在GitHub上发布iOS开源框架_第12张图片
截图

这个tag分支就是将来提供给别人依赖的版本号分支,别人使用你的组件的时候就可以根据版本号来控制了版本了。

接下来,就是将代码发布到CocoaPods上,首先先编辑一下podspec文件,summary需要修改,不然等下验证的时候会不通过,version也需要跟之前的保持一致


在GitHub上发布iOS开源框架_第13张图片
操作截图
  • 检查一下podspec是否合法
pod lib lint --verbose

验证通过是这样滴


在GitHub上发布iOS开源框架_第14张图片
截图
  • 验证成功就可以提交上去了
pod trunk push XAGuidePage.podspec --verbose

好了,大功告成!


在GitHub上发布iOS开源框架_第15张图片
截图

如果搜不到的话,不要担心,不是没传成功,是我们的CocoaPods本地搜索库没更新,可以先删除~/Library/Caches/CocoaPods目录下的search_index.json文件或者pod repo update一下
终端执行

rm ~/Library/Caches/CocoaPods/search_index.json

再执行

pod search XAGuidePage
在GitHub上发布iOS开源框架_第16张图片
大功告成!

你可能感兴趣的:(在GitHub上发布iOS开源框架)