Private Pods Tutorial
Step 1 在server上建立某个组件仓库
条件:CocoPods
通过pod lib create ProjectName
命令会自动建立一个项目的模版
类似下面的目录结构
PodTestLibrary
├── Example #demo APP
│ ├── PodTestLibrary
│ ├── PodTestLibrary.xcodeproj
│ ├── PodTestLibrary.xcworkspace
│ ├── Podfile #demo APP 的依赖描述文件
│ ├── Podfile.lock
│ ├── Pods #demo APP 的依赖文件
│ └── Tests
├── LICENSE #开源协议 默认MIT
├── Pod #组件的目录
│ ├── Assets #资源文件
│ └── Classes #类文件
├── PodTestLibrary.podspec #第三步要创建的podspec文件
└── README.md
里面有一个XYTestPj.podspec文件,这个文件对你组件的进行了说明,包括组件描述、主页、截图、开源证书、源码地址、作者、文件结构、需要依赖的库等等。它是用自己的语法写的。详细地址
Step 2 修改podspec文件并验证
pod spec lint ProjectName.podspec
,执行这个命令它会验证你的podspec文件,如果有不符合要求的会有提示,跟这一步一步的该就行。出现下面的命令即通过验证。
xiamin$ pod spec lint XYTestPj.podspec
-> XYTestPj (0.1.0)
Analyzed 1 podspec.
XYTestPj.podspec passed validation.
验证之前要先打一个tag 0.0.1(XCode8.0、Pod 1.1.0之后改的)
Step 3 在本地工程里加入你的源码
在Development Pods > XYTestPj > 文件夹下面加入你的源码。
最后提交到远程仓库。
提交当前版本
git tag 0.1.0
git push origin 0.1.0
这里的tag一定要和spec文件里的version保持一致
Step 4 在server上建立spec仓库
第一次的时候是一个空的文件夹,如果你什么开源组件都没写的话
Step 5 提交spec到本地仓库
$ pod repo add Specs git@192.168.1.33:Robert/Specs.git
$ cd ~/.cocoapods/repos/XYTestPj
$ pod repo lint .
CocoaPods在本地有所有库的索引,在
~/.cocoapods/repos/msater
目录下面。我们上面要做的是在repo
目录下建立一个本地的所有private pods的spec文件的文件夹。
Step 6 同步本地和server上的spec仓库
$ pod repo push Specs XYTestPj.podspec
每次提交新版本的时候CocoaPods会同步本地和server上的spec仓库。
Step 7 使用
pod 'XYTestPj', :git => 'http://192.168.1.33:9090/Robert/XYTestPj.git'