pod私有库的创建

2019-02-20  本文已影响16人  小小小蚍蜉

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中

附注:

    pod私有库官网指南

    CocoaPods创建私有pod库(踩坑篇)

上一篇下一篇

猜你喜欢

热点阅读