Swift制作私有库 GitHub(图文详解)
Swift制作私有库 GitHub(图文详解)
1.创建索引库,XDKitSpecs
用于集中存放所有库的索引,勾选Add a README file
这样就创建了一个初始化好了的库,如图:
[图片上传失败...(image-666ed3-1656385364398)]
完成后的仓库,如图:
[图片上传失败...(image-f15f18-1656385364398)]
2.创建组件库,XDUIExtension
用于存放组件,不要勾选Add a README file 也不要添加 Add .gitignore, 需要的是一个未初始化的仓库。
[图片上传失败...(image-d7c7d8-1656385364398)]
完成后的仓库,如图:
[图片上传失败...(image-6cf3da-1656385364398)]
3.在本地新建一个目录Modules
,并在终端cd
到该目录下,执行如图:
[图片上传失败...(image-e51410-1656385364398)]
4.执行pod lib create XDUIExtension
,这样就自动生成了一个项目,如图:
[图片上传失败...(image-e6d332-1656385364398)]
生成项目的目录结构,如图:
[图片上传失败...(image-79b358-1656385364398)]
5.打开Example/XDUIExtension.xcworkspace
项目,一般会自动打开,将XDUIExtension.podspec
中的s.homepage
和s.source
替换成我们第2步创建的组件库地址,s.homepage
记得去掉.git
,如图:
[图片上传失败...(image-f5eee8-1656385364398)]
6.找到Classes
目录,这里是放源码的地方,删除ReplaceMe.swift
,将组件源码拖进去,如图:
[图片上传失败...(image-580c11-1656385364398)]
[图片上传失败...(image-42d461-1656385364398)]
7.导入源码cd
到Example
目录,执行pod install
,如图:
[图片上传失败...(image-258d1a-1656385364398)]
8.此时项目的Development Pods
目录中就能看到源码了,如图:
[图片上传失败...(image-fa0503-1656385364398)]
9.上传组件源码,cd
到组件所在目录XDUIExtension
,按照顺序执行以下命令:
find . -name ".git" | xargs rm -Rf
git init
git add .
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/ywdonga/XDUIExtension.git
git push -u origin main
执行完成后,远程仓库目录结构,如图:
[图片上传失败...(image-43d4d5-1656385364398)]
10.打上tag
版本号0.1.0
和XDUIExtension.podspec
文件中的s.version
一定要保持一致
git tag 0.1.0
git push origin 0.1.0
11.创建本地Spec Repo
,索引地址就是第1步创建的索引仓库地址,执行命令:
pod repo add XDKitSpecs https://github.com/ywdonga/XDKitSpecs.git
12.校验索引文件.podspecs
,cd
到XDUIExtension
目录执行:
pod lib lint XDUIExtension.podspec --allow-warnings
执行结果如图:
[图片上传失败...(image-8da506-1656385364398)]
13.推送索引文件,还是在XDUIExtension
目录,执行命令:
pod repo push XDKitSpecs XDUIExtension.podspec --allow-warnings
执行结果如图:
[图片上传失败...(image-7b0d29-1656385364398)]
14.这样在远程索引仓库就能看到我们刚推上去的组件索引了,如图:
[图片上传失败...(image-82b3b2-1656385364398)]
15.使用的时候,需要在Podfile的顶部添加索引源
source "https://github.com/ywdonga/XDKitSpecs.git"
然后想其他三方库一样,添加 pod "XDUIExtension"
就可以了
如图:
[图片上传失败...(image-b6bb5-1656385364398)]