此处省略一万字……
废话不多说,直接进入正题!
一、创建私有的spec文件仓库
1.首先在github或gitlab上创建一个空项目,这里起名为DFSpecs.
2.在终端执行如下命令:
pod repo add DFSpecs https://github.com/dzwing/DFSpecs.git
注释:pod repo add 私有库名字 github/gitlab 项目地址
作用:(1)创建本地仓库 (2)同第一步创建的项目关联起来
注意点: DFSpecs 是一个索引库,用来管理你的所有的私有pod 仓库的podspec文件的,执行完上面第2步,会在~/.cocoapods/repos 目录下自动生成DFSpecs 本地仓库
二、创建我们需要pod的项目
1.另起一个路径,执行如下命令:
cd ~/Desktop/
//这个命令的作用是创建一个pod项目,它会自动给你生成spec文件
pod lib create DFCategoryKit
2.执行完这个命令之后会有如下几个选项,根据你的需求填写就👌了
3.选项填完之后回车,会自动创建一个项目,名称就是DFCategoryKit
4.在DFCategoryKit里面有两个文件夹
Assets:存放图片资源等等
Classes:存放源码,默认会有一个ReplaceMe.m文件
我们只需要把要上传的代码放入Classes文件即可,如果需要查看更改后demo效果,在Example中pod update即可更新修改的文件.
5.在github或gitlab上创建新的pod项目,这里我创建的地址是
https://github.com/dzwing/DFCategoryKit.git
6.进入DFCategoryKit项目,修改spec文件,这里可以用Sublime Text或者文件编辑器(不推荐,因为可能会改变"的格式,造成lint不通过),我这里直接在xcode中进行更改,根据你的需要进行相应更改。
7.执行pod lib lint --allow-warnings (--verbose加上显示详情)
-> DFCategoryKit (0.1.1)
DFCategoryKit passed validation.
终端如此显示便是lint成功了.
8.继续执行如下命令:
git remote add origin https://github.com/dzwing/DFCategoryKit//这里是你需要pod的项目地址,不是私有库的地址
git add .
git commit -m "注释描述"
git push origin master
//注意:如果你创建项目的时候生成了README或者license文件,那么这里你push的时候可能会push不了,如是你可用
git push origin master -f 强制提交,会覆盖之前的文件
9.为仓库打tag,这个tag需要和spec文件中的版本保持一致
git tag -m "你的描述" 0.1.1
git push --tags
10.最后的最后,我们渴望化成天使... 将你项目中的spec文件push到第一步创建的私有库进行管理,可以用pod repo 命令查看你的私有库
//执行如下命令
// pod repo push 最开始建立的私有库名称 pod项目中的spec文件,--allow-warnings --verbose 忽略警告,打印详细日志
pod repo push DFSpecs DFCategoryKit.podspec --allow-warnings
Validating spec --allow-warnings --verbose
-> DFCategoryKit (0.1.1)
Updating the `DFSpecs' repo
Your configuration specifies to merge with the ref 'refs/heads/master'
from the remote, but no such ref was fetched.
Adding the spec to the `DFSpecs' repo
- [Add] DFCategoryKit (0.1.1)
Pushing the `DFSpecs' repo
跟我一起倒数五个数,5、4、3、2、1,👌到此私有库就创建成功了,你可以去使用了,具体怎么使用在这里就不做详细叙述了~
创建成功之后可能会出现search不到的情况,此时可删除本地搜索索引,然后再进行搜索
rm ~/Library/Caches/CocoaPods/search_index.json
pod search DFCategory