1.创建2个远程仓库
创建WXSpec远程仓库,用来存放本地spec。
创建WXPodProject远程仓库,用来存放项目工程文件。
2.创建spec Repo
2.1 前往文件夹 ~/.cocoapods/repos
打开终端,进入到当前目录 cd /Users/用户名/.cocoapods/repos
2.2 进行pod repo add操作
在终端输入: pod repo add WXSpec https://git.xxxx.net/WXSpec.git(1中创建的WXSpec远程仓库的地址)
3.创建pod的所需的项目工程文件
3.1 cd 切换到一个目录下,然后执行pod lib create WXPodLib如图:
然后进到到WXPodLib里面找到Classes中的"ReplaceMe.m"文件删除,然后将自己所需要的文件放到这里目录下cd 到Example文件下,然后pod install下,更新Example项目的pod
3.2 打开example中的项目,找到WXPodLib.podspec 文件,更改如图
3.3 修改完成后,cd 到WXPodLib目录下,然后验证podspec文件 下面两种方法任选其一
pod lib lint yourPodName.podspec //进行本地验证文件有效性。
pod spec lint //本地和远程验证你的pod能否通过验证
我选择 pod spec lint 报错如下:
- ERROR | [iOS] file patterns: The `source_files` pattern did not match any file.
[!] WXPodLib did not pass validation, due to 1 error and 3 warnings.
You can use the `--no-clean` option to inspect any issue.
这是因为在WXPodLib/Classes/**/* 目录下没有文件
解决方法:在项目Pods->Development Pods->WXPodLib 下新建文件
下一步作如下选择
然后添加文件到本地:git add -A && git commit -m "add pod files"
推送到远程:git push master
报错:fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream master master
再运行: git push --set-upstream master master
报错:fatal: 'master' does not appear to be a git repository
fatal: Could not read from remote repository.
再运行: git push
报错: fatal: No configured push destination.
Either specify the URL from the command-line or configure a remote repository using
git remote add <name> <url>
and then push using the remote name
git push <name>
再运行: git remote add origin https://xxxx.com.cn/PrivatePod/WXPodProject.git
再运行: git push origin master
终于成功!
3.4 设置tags
添加本地tag:git tag 0.1.0
推送tag: git push --tags
额外补充:
添加本地tag:git tag -a 1.1.1;
删除本地tag:git tag -d 1.1.1
删除远程tag:git push origin --delete 1.1.1
3.5 再次运行:pod spec lint 这次只有两个警告
运行:pod spec lint --allow-warnings
提示 WXPodLib.podspec passed validation. 至此终于验证通过
3.5 向私有的spec Repo远程仓库中提交podspec
运行:pod repo push WXSpec WXPodLib.podspec //报两处警告
在运行:pod repo push WXSpec WXPodLib.podspec --allow-warnings //成功!
运行:pod repo // 查看第三方框架仓库源
最后运行:pod search WXPodLib //可以搜索出来
至此,大功告成!
网友评论