1,首先创建两个远程库;kSpec(已设置为public)和kFramework;
2, 通过以下命令进入到repo中:
cd ~/.cocoapods/repos/
再执行 pod repo add kSpec https://gitee.com/Kinno/kSpecs.git; 注意kSpec是你希望在repo目录下创建的存储 (私有库名).spec的文件名,【kSpec文件会自动生成】
3,随便cd到一个空文件夹(最好在桌面,容易操作),执行pod lib create kFramework;
你会看到以下信息,并回答相应的选择。
![](https://img.haomeiwen.com/i1989939/2f0930b22f8e9930.png)
接着会自动创建kFramework私有库文件如下图,并且example Xcode工程会自动打开;
![](https://img.haomeiwen.com/i1989939/c1b4b81aac4deeb4.png)
添加后,cd 到Example文件下,然后进行pod install;打开example 工程文件,在Podspec Metadata文件夹下的kFramework.podspec文件中,修改对应参数,
s.version 要和私有库的tag值保持一致,稍后介绍;
s.summary 要做出更改,否则会有提示;
s.homepage和s.source中对应的链接即是kFramework私有库的远程链接;
![](https://img.haomeiwen.com/i1989939/e7f59c78c85b229d.png)
以上修改完成后,需要验证podspec文件的有效性,此时需要cd到kFramework.podspec的【父级】目录,执行pod lib lint kFramework.podspec 进行本地文件有效性验证。
会出现如下图所示:(红框信息表示验证有效,虽有warning, 但developer从来不在乎warning,所以going)
![](https://img.haomeiwen.com/i1989939/9ac19e52fef83d2f.png)
4,使用git remote add origin https://gitee.com/Kinno/kFramework.git (https://gitee.com/Kinno/kFramework.git是本pod库的远程仓库地址),将本地项目与gitee远程仓库关联;会提示error,failed to push.....;
>>按提示进行git pull origin master;
出现fatal:refusing to merge unrelated histories; 是因为没有找不到关联节点,
>>然后执行git pull origin master --allow-unrelated-histories命令;
提示:自动merge失败,需要fix conflict.....,
>>然后进入解决经常出现的冲突解决模式,依次执行以下命令:
git add.
git commit -m "提交信息"
git pull origin master
git push origin master
此时,查看前去gitee查看远程pod库,出现了相应的文件;
>>然后使用以下命令给远程pod库打tag标签;
git tag -m "0.1.0" -a 0.1.0 //创建本地标签
git push --tags // 推送所有标签
git tag //查看当前标签
(此tag值要与kFramework.podspec中的s.version保持一致,也就是改动,要两者都改动)
5,然后使用pod spec lint kFramework.podspec命令进行本地和远程验证文件有效性。(kFramework是你的pod库名称)
6,使用 pod repo push kSpec kFramework.podspec 命令把私有库添加到私有repo中,同时前往最初关联的kSpec远程库刷新出现了kFramework.podspec(0.1.0);以及本地~/.cocoapods/repos/kSpec下也出现了相应的kFramework文件(带有tag版本)
7,在私有库工程目录下,执行pod repo出现如图:(注意红框URL信息,在稍后的podfile中填写的source对应此url)
![](https://img.haomeiwen.com/i1989939/126f1e86fbaf281a.png)
8, 使用 pod search kFramework 就可以搜出刚创建的库:
![](https://img.haomeiwen.com/i1989939/aff2c8f815eb71ab.png)
9, 使用自己创建的私有pod库,设定source;
![](https://img.haomeiwen.com/i1989939/d83c6be590964914.png)
10,然后进入example文件pod install 或 pod update下,即可使用pod库文件;
![](https://img.haomeiwen.com/i1989939/c2bd3cec14a7c4f2.png)
11,如果pod库文件有更改,每次都需要使用 pod repo push yourRepoName yourPodName.podspec 命令把私有库添加到私有repo中
附注:
网友评论