一:创建自己的远程索引库
1.在码市上注册一个账号,新建一个仓库
2.终端pod repo 查看 确认是否只有一个master
3.pod repo —help 查看命令
如下:Commands:
+ add Add a spec repo
+ add-cdn Add a spec repo backed by a CDN
+ lint Validates all specs in a repo
> list List repos
+ push Push new specifications to a spec-repo
+ remove Remove a spec repo
+ update Update a spec repo
4. 终端直接输入命令,pod repo add testLibs git@git.dev.tencent.com:dtid_617e164f5748bbf0/testLibs.git
注意:testLibs 自己的本地仓库名称与远程保持一致,完成可以在前往—》个人 -〉找到.cocoapods->找到repos文件夹 路径下看到
git@git.dev.tencent.com:dtid_617e164f5748bbf0/testLibs.git是码市上新建项目的ssh地址
公钥私钥问题的解决方法
4.2前往—》个人 -〉找到.ssh 文件夹
在码市网站,个人中心 找到ssh ,新增公钥。在终端使用命令ssh-keygen生成
4.3 前往—》个人 -〉找到.ssh 文件夹打开查看生成的公钥。添加完成之后,在终端输入
pod repo add testLibs git@git.dev.tencent.com:dtid_617e164f5748bbf0/testLibs.git命令
完成之后去验证。前往—》个人 -〉找到.cocoapods->找到repos文件夹 ,打开repos文件夹,成功如下图;
二:将自己的代码上传到远程索引库
3.1 在码市新建一个项目testBaseLibs
3.2,在桌面新建个romoteLib
终端进入到 cd /Users/xuzhenzhen/Desktop/远程私有/romoteLib 文件中
pod lib create testBaseLibs
成功之后,打开文件夹如下图
3.3 终端进入上一步生成的example文件夹,进入指定的路径之后,执行pod install,如下图。
打开example 文件夹中的项目,查看倒入的文件是否存在,在编译查看是否有问题。这个我觉得很好奇,因为我这边是有个classes文件的,但是生成的项目路径下么有。
3.4 接下来需要吧 /Users/xuzhenzhen/Desktop/远程私有/romoteLib 文件中 testBaseLibs远程仓库(码市)
终端进入 /Users/xuzhenzhen/Desktop/远程私有/romoteLib/testBaseLibs 文件夹
使用git status查看下,
如下根据提示使用命令
git add .
git commit -m ‘xxx’
3.5 在push 之前需要先修改testBaseLibs.podspec文件;修改之前可以先验证soure文件的路径
本地验证: 终端进入 /Users/xuzhenzhen/Desktop/远程私有/romoteLib/testBaseLibs文件夹
pod lib lint —allow-warnings
远程验证:终端进入 /Users/xuzhenzhen/Desktop/远程私有/romoteLib/testBaseLibs文件夹
pod spec lint —allow-warnings
报错如下
原因:本地验证的时候不会验证spec文件的tag ,但是远程验证需要。所以需要在终端为spec文件打标签;
步骤如下:先建立本地库与远程库的关联
git status
git add .
git commit -m ‘xxx’
git remote
git remote add origin git@git.dev.tencent.com:dtid_617e164f5748bbf0/testBaseLibs.git
git remote
git push origin master
成功之后,刷新浏览器,查看项目上传码市仓库成功
3.5 开始打标签,tag与spec 文件的version 保持一致
git tag
git tag ‘0.1.0’
git push —tags
接着进入远程仓库的再次验证
pod spec lint --allow-warnings
3.6 需要注意的本地的spec push会先提交到跟cocoapods master 路径在一起的本地索引库,然后远程索引库会自动更新
spec文件修改如下
3.7 提交到本地索引库 testLibs 是本地索引库的名称
终端进入 /Users/xuzhenzhen/Desktop/远程私有/romoteLib/testBaseLibs文件夹
pod repo push testLibs testBaseLibs.podspec
完成之后查看
前往—》个人 -〉找到.cocoapods->repos-》testLibs 可以看到了本地索引库已经存在一个testBaseLibs 0.1.0 版本。
打开码市,找到第一次创建的远程私有库,码市项目testLib截图如下
可以在终端pod search 验证,pod search testBaseLibs
3.8 使用的时候podfile 文件需要加入
source ‘git@git.dev.tencent.com:dtid_617e164f5748bbf0/testBaseLibs.git'
source ‘https://github.com/CocoaPods/Specs.git'