Create Private Pods

CocoaPods不仅仅是一个添加开源代码到你的项目的伟大工具,而且也可以在项目之间分享组件。你可以用一个private Spec Repo来实现。
为工程配置一个私有仓库有些许步骤;

  • 为这些工程创建一个私有仓库
  • 让CocoaPods知道在哪可以发现它,并增加podspecs到这个私有仓库

1.创建一个Private Spec Repo

Spec Repo其实就是一个容器,是所有的Pods的本地git仓库,它是包含所有的Pods的一个索引。这些仓库的remote在你自己的git服务器上例如github。当你本地安装了Cocoapods后,它会被clone到本地的~/.cocoapods/repos目录下,我们可以看见master的一个目录。这个文件夹是官方的Spec Repo。因此,我们需要建立一个类似于master的Spec Repo,我们可以fork官方的Repo,也可以自己创建,我们不需要把现有的公开Pods都copy一份,所以我们还是自己创建一个吧。

Create Private Pods_第1张图片
创建私有repo仓库.png

创建完成,然后我们在Terminal中执行命令

pod repo add [Private Repo Name] [Github HTTPS clone URL]

这里我们的[Private Repo Name]是我们的repo仓库的名字,成功执行完命令后会在本地~/.cocoapods/repos目录下。
这里我们演示执行的命令如下

pod repo add HCBSpecs https://github.com/DukeHuang/HCBSpecs.git

这样我们的就完成了第一步

2.创建我们Private Pods所需要的项目工程文件,并且有可访问的项目版本控制地址。

这里可以是git,也可以是svn。并且要打上tag

3.创建Private Pods所对应的podspec文件

这里的2、3步可以通过cocoapods提供的命令行工具进行创建

$ pod lib create HCBNetwork

回车后他会让你选择几个问题,

  • 输入作者的email
  • 选择使用的语言 [Swift / ObjC]
  • 是否需要一个Demo Project [Yes / No]
  • 选择一个Test framework [Specta / Kiwi / None]

接下来及时向Pod文件夹中添加库文件和资源文件,并配置podspec文件。

这里我们创建两个文件放在作为测试
放在HCBNetwork/HCBNetwork/Classes文件夹下面

Create Private Pods_第2张图片
屏幕快照 2016-05-16 上午9.22.50.png

Note: 通过pod lib create命令创建的工程本身就是在git的版本管理下,我们需要做的是把它添加到remote仓库,同样,我们去github创建一个仓库,然后通过命令行的方式把代码push上去

cd 到 HCBNetwork的目录下执行下面的命令

git add .
git commit -s - m "first init"
git remote add origin https://github.com/DukeHuang/HCBNetwork.git
git push origin master

我这里出现了冲突,是因为我两边都生成了README.md 和 LICENSE文件

git push -u origin master -f

强制覆盖远端的即可

接下来我们编辑podspec文件

podspec文件解释


Create Private Pods_第3张图片
屏幕快照 2016-05-16 上午9.48.50.png

我们创建的podspec文件

Create Private Pods_第4张图片
屏幕快照 2016-05-16 上午9.51.15.png

我们修改其中的 s.homepage s.source
为我们刚刚创建的 https://github.com/DukeHuang/HCBNetwork.git

cd 到 HCBNetwork的目录下执行下面的命令

pod lib lint

发现报错
- WARN | summary: The summary is not meaningful.
修改podspec中的s.summary即可

验证无误后我们就可以进入下一步

4.向Spec Repo提交podspec

向Spec Repo提交podspec必须保证上一步的验证通过,
同时我们需要给我们的HCBNetwork打上tag

git tag "0.1.0"
git push --tags

然后执行下面的命令

pod repo push HCBSpecs HCBNetwork.podspec


Create Private Pods_第5张图片
屏幕快照 2016-05-16 上午10.07.20.png

这样我们就完成了所有的创建工作,可以在其他工程中使用我们自己的库了

这里需要指出的是Podfile中的source 必须指明我们我的HCBSpecs仓库哦

参考http://www.cocoachina.com/ios/20150228/11206.html

你可能感兴趣的:(Create Private Pods)