⚠️本文采用码云做事例,话不多说,直接开干
一.创建创建远程私有索引库
由于之前已经创建好了本地索引库,所以这里会是红色的,自己起一个名称
这样就把自己的私有索引库创建好了
二.接下来我们创建本地的索引库并将其关联到码云上面的远程库
1.打开资源文件,先打开Finder-->前往--->个人
然后击command+shift+. 将隐藏文件打开
然后找到.cocoapods
然后cd 到该目录下cd /Users/lirui/.cocoapods/repos
接着将本地索引库关联到远程仓库
pod repo add SYHPodsSpecs https://gitee.com/lirui50300/syhpods-specs
后面的地址,可以通过仓库,管理里面查看路径
当你发现repos 下面 有SYHPodsSpecs文件夹的时候,说明关联成功了
三.接下来开始创建需要私有化的代码仓库,和创建索引的远程库的方法一样
创建完远程私有库,就开始创建本地代码
1.cd 到桌面的某一个文件夹
执行 pod lib create SYHTestDemo
其中SYHTestDemo 为你远程仓库的名称
然后你就会看到文件夹里面多了一个工程项目
然后将写好的demo或者工具类,放入里面 replace 掉,
然后开始创建远程私有代码库,以便和刚才的demo关联,
在码云上面创建私有库
复制地址:https://gitee.com/lirui50300/syhtest-demo.git
这样就创建成功了
接着去修改工程参数
这样本地库的参数就修改好了,接着就需要将该库关联到远程库
首先cd 到该demo目录下
cd /Users/lirui/Desktop/组件化/SYHTestDemo
git remote add origin https://gitee.com/lirui50300/syhtest-demo
git push -u origin master -f
git add .
git commit -am "提交代码0.0.1"
git push -u origin master -f
git tag 0.0.1#(注意,这里的tag必须和.podSpec文件的版本一致)
git push --tags
然后对文件进行本地验证和远端验证
pod lib lint --allow-warnings
pod spec lint --use-libraries --allow-warnings #远端验证
最后将本地.podspec文件推送到本地索引库
pod repo push SYHPodsSpecs SYHTestDemo.podspec --use-libraries --allow-warnings #(如果前面一步加了--use-libraries --allow-warnings 此时务必加上,不加这报错)
做到这里就说明添加成功了
然后我们可以新建一个工程测试一下
在我们的工程pod文件里面
接下来就是pod install 就可以了,这样就可以用了.
当我们需要修改私有库的代码的时候
(1)去工程中修改你要修改的代码。
(2).podSpec文件中修改版本号,设置成你此次修改的版本,然后打tag,推送到远端。
cd /Users/lirui/Desktop/组件化/SYHTestDemo
git push -u origin master
git add .
git commit -am "提交0.0.2版本"
git push -u origin master
git tag 0.0.2
git push --tagspod repo push SYHPodsSpecs SYHTestDemo.podspec --use-libraries --allow-warnings
这样就全部完成了.
⚠️:当你制作了多个私有库的时候比如A,和B ,这个时候我需要制作一个新的私有库C,
并且C可能依赖了A私有库,这个时候我需要在C里面的pod文件,
需要先添加A的索引库,比如source 'https://gitee.com/lirui50300/syhpods-specs.git'
然后pod ‘A’
接着修改s.dependency
然后cd到该项目pod install
然后和之前的操作一样,最后在验证的时候需要注意
pod lib lint --allow-warnings --use-libraries --sources=https://gitee.com/lirui50300/syhpods-specs.git,https://github.com/CocoaPods/Specs.git
pod spec lint --use-libraries --allow-warnings --sources=https://gitee.com/lirui50300/syhpods-specs.git,https://github.com/CocoaPods/Specs.git
pod repo push SYHPodsSpecs SYHTestDemo.podspec --use-libraries --allow-warnings --sources=https://gitee.com/lirui50300/syhpods-specs.git,https://github.com/CocoaPods/Specs.git
因为这个时候新制作的私有库里面包含了A,所以需要加上sources=https://gitee.com/lirui50300/syhpods-specs.git