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;
你会看到以下信息,并回答相应的选择。
接着会自动创建kFramework私有库文件如下图,并且example Xcode工程会自动打开;
添加后,cd 到Example文件下,然后进行pod install;打开example 工程文件,在Podspec Metadata文件夹下的kFramework.podspec文件中,修改对应参数,
s.version 要和私有库的tag值保持一致,稍后介绍;
s.summary 要做出更改,否则会有提示;
s.homepage和s.source中对应的链接即是kFramework私有库的远程链接;
以上修改完成后,需要验证podspec文件的有效性,此时需要cd到kFramework.podspec的【父级】目录,执行pod lib lint kFramework.podspec 进行本地文件有效性验证。
会出现如下图所示:(红框信息表示验证有效,虽有warning, 但developer从来不在乎warning,所以going)
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)
8, 使用 pod search kFramework 就可以搜出刚创建的库:
9, 使用自己创建的私有pod库,设定source;
10,然后进入example文件pod install 或 pod update下,即可使用pod库文件;
11,如果pod库文件有更改,每次都需要使用 pod repo push yourRepoName yourPodName.podspec 命令把私有库添加到私有repo中
12,每次再文件中添加新的类,都需要进行一次pod install。
附注: