基于CocoaPods组件化实践

2020-08-10  本文已影响0人  得_道

1.在github创建远程私有仓库

2.关联本地repo和远程仓库

pod repo add xxx https://github.com/xxx/xxx.git

3.github上创建组件源码库

4.创建pod项目工程

pod lib create HelloPod

5.让本地仓库和远程仓库进行关联

git remote add origin https://github.com/xxx/xxx.git

然后将代码同步到此Git上。

git add .

git commit -m "Init"

git remote add origin http://git.xxx.com/xxx/xxx.git(替换为自己的实际git地址)

git push --set-upstream origin master

podSpec文件需要版本控制信息,所以我们要打一个Tag.

git tag -m "first demo" 0.1.0

git push --tags

6.向Spec Repo提交podspec

在执行本歩之前,确保最新代码已经提交到了Git上,且已经打好了tag.

向Spec Repo提交podspec的命令:

pod repo push xxx xxx.podspec --allow-warnings

此时通过pod search HelloXXXPod 已经可以查到了!
最后,为了保证本地的repo已经被更新,运行pod update来更新repo

7.如何在外部项目中使用

我们可以在想要使用的项目中的Podfile里加入如下代码:

pod 'helloXXXPod'

当然,由于我们的是私有CocoaPods库,因此最好告诉系统这个库的source在哪里,因此在Podfile文件上部也请加上Spec Repo的git地址。同时,为了确保公共的cocoaPod可以被正常下载,请添加外部CocoaPod的库:

# For inner pods
source 'https://github.com/xxx/Specs.git'

# For public pods
source 'https://github.com/CocoaPods/Specs.git'

遇到的问题

HTUIKit IOSPC$ git push -u origin master

To https://github.com/lanht/HTUIKit.git
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/lanht/HTUIKit.git'
hint: Updates were rejected because a pushed branch tip is behind its remote
hint: counterpart. Check out this branch and integrate the remote changes
hint: (e.g. 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

处理办法:https://www.cnblogs.com/daemon369/p/3204646.html

上一篇下一篇

猜你喜欢

热点阅读