本文写的不是很详细,只是记录自己操作的一个大致过程。更加详细的操作,大家不妨参考使用Cocoapods创建私有podspec,我也是按照上面一步一步操作的,只不过个人觉得那个排版看起来真的不太友好。如果英文不错的话,其实我更建议大家看看下面的英文参考链接。
准备工作
首先创建两个Git仓库,一个用来存放私有Spec Repo,另一个则存放我们私有的类库。因为Github上面私有库是要收费的,所以我选择了Coding
创建私有Spec Repo
创建本地私有Spec Repo,在终端输入下面命令即可
12# pod repo add [Private Repo Name] [Coding HTTPS clone URL]$ pod repo add DQBSpecs https://git.coding.net/qingbo/DQBSpecs.git输完命令运行后,就在
~/.cocoapods/repos/
目录下自动生成了一个名为DQBSpecs的本地私有Spec Repo.
创建Pod项目工程文件
如果是有现有的组件项目,并且在Git的版本管理下,那么这一步就算完成了,可以直接进行下一步了。
如果你的组件还在你冗余庞大的项目中,需要拆分出来或者需要自己从零开始创建一个组件库,那么建议你使用Cocoapods提供的一个工具将这一步与下一步结合起来做。
现在来说一下这个工具,相关的文档介绍是Using Pod Lib Create,就拿我创建的DQBLibrary为例子具体讲一下这里是如何操作的。
首先cd到要创建项目的目录下,然后执行
|
|
接下来会出现几个选项,输入你所期望的就OK啦,附上我的选项截图:
创建podspec文件
如果现在有了现成的项目(是指不是通过pod lib create XXXX
来创建的项目,如果是通过pod lib create
命令创建的项目默认就会生成一个podspec文件)那么就需要给这个项目创建一个podspec文件,创建它需要执行Cocoapods的另外一个命令,官方文档在这里
|
|
执行完之后,就创建了一个podspec文件,它其中会包含很多内容,可以按照需求进行编辑,没用的删掉。
|
|
编辑完成之后使用验证命令验证一下
|
|
向Spec Repo提交podspec
向Spec Repo提交podspec需要完成两点一个是podspec必须通过验证无误,在一个就是删掉无用的注释(这个不是必须的,为了规范还是删掉吧)。 向我们的私有Spec Repo提交podspec只需要一个命令
|
|
完成之后这个组件库就添加到我们的私有Spec Repo中了,可以进入到~/.cocoapods/repos/DQBSpecs目录下查看
再去看我们的Spec Repo远端仓库,也有了一次提交,这个podspec也已经被Push上去了。
至此,我们的这个组件库就已经制作添加完成了,使用pod search命令就可以查到我们自己的库了
这里说的是添加到私有的Repo,如果要添加到Cocoapods的官方库了,可以使用trunk工具,具体可以查看官方文档。
使用制作好的Pod
在完成这一系列步骤之后,我们就可以在正式项目中使用这个私有的Pod了,我们需要在podfile文件顶端中多定义一个source,该source地址是我们私有git地址,示例代码如下:
|
|
更新podspec文件
首先修改工程里的podspec文件,然后pod install
,将变动全部提交至对应的git服务器(工程文件对应的git地址,并非Spec文件对应的git地址),并添加一个新的tag值。然后pod lib lint
先验证一下,再进行下面更新操作:
|
|
更新成功后,你可以在~/.cocoapods/repos/
的私有库目录下查看新增了一个文件夹名为tag,该目录下生成了对应tag的podspec文件。