话不多说,直接上代码
一.生成私用的pod仓库
1.首先注册Git 项目。并复制其地址
2.通过pod repo add <本地索引库的名字> <远程索引库的地址>命令
打开终端,输入 pod repo add LXLSpecs https://github.com/jiagq/NewProduct.git 回车
终端打印 Cloning spec repo `LXLSpecs` from `https://github.com/jiagq/NewProduct.git` 便生成一个文件【如下图查询】
二.创建pod lib
1.cd 到你准备创建项目的目录下
2.打开终端执行 pod lib create NewProductFirst【项目名称,这个名字远程代码库一致】,之后会出现一些问题需要选择
最后一个选项的意思是问项目的前缀是什么,大家可以根据自己的项目来填写
填写完成之后,终端就会自动开始下载,在下载完成之后自动打开项目【项目地址就在刚才你创建的那个空文件夹】。
3.接着cd到Example下进行pod install (把刚才拖入到classes里的文件夹pod进来,这里会通过podfile里面默认的设置,自动把classes里的文件pod过去);
4.vim NewProductFirst.podspec.编辑NewProductFirst.podspec相关配置
5.提交组件到远程代码库并打tag.
git add .
git commit -m “xxx”
git remote add origin 远程代码仓库地址
git push origin master 或者 git push -u origin master(一般第一次提交用)
git tag 版本号/git tag -a 版本号 -m “version 版本号”(注:这里的版本号必须和podspec里写的版本号一致)
git tag 查看版本号是否提交成功
git push - -tags
6.cd 到目录内,找到NewProductFirst.podspec。然后执行pod lib lint --allow-warnings(注:pod lib lint是检索本地索引文件,pod spec lint 是本地和远程库同时检索)
7.之后继续执行 pod spec lint --allow-warnings
8.验证通过后,pod repo push <本地索引库> <索引文件名> --allow-warnings 提交索引文件到远程索引库。
上面已经有我们创建的NewProductFirst 私有pod的了。接下来我们测试一下,看看能否集成到我们的项目中去!!
找一个有Pod工程的项目。接入
pod 'NewProductFirst',:git => 'https://github.com/jiangq/NewProduct.git'
然后执行 pod install
这样就集成到我们的项目中了,之后我们运行一下,看看好使么!!!
这样一个私有的Pod就生成了。。。!!!
**课外知识
1.查询repo库 cd ~/.cocoapods 之后回车 输入ls,就可以看到你创建的了
2.删除repo中的文件 rm -rf 文件名
.查看标签
查看本地某个 tag 的详细信息:
git show <tagName>
查看本地所有 tag:
git tag 或者 git tag -l
查看远程所有 tag:
git ls-remote --tags origin
.删除标签
本地 tag 的删除:
git tag -d <tagName>
远程 tag 的删除:
git push origin :<tagName>
在集成时候出现的bug解决:1.再将本地代码提交到远程的时候提示Git pull 的时候最快的解决办法就是,直接从远程clone一个代码库下来,之后将之前的代码库中的代码全部拷贝到新的代码库中进行提交 。2。就是直接Git pull ,然后在继续Git push origin master
记住本地生成的cocoapods中的索引库必须与远程的Git 地址相关联!!!!