CocoaPods 新建 第三方+各种坑问题解决方法
1.cd pod_project
2.pod lib create BMWorkVisitor
3.进入Classes 文件夹 ,添加一个你想要的文件demo文件
4. 到example 文件夹下
5. pod update
6. xcode 重启,看看目录下pod 文件是不是有了
7. 提交pod 库到远端也是整个的项目
$ git add .
$ git commit -s -m "初始化MyLib 库"
$ git remote add origin git@git.coding.net:tb/MyLib.git #添加远端仓库
$ git push origin master #提交到远端仓库
$ git tag -m "first release" "0.1.0" #打上标签,这个很重要 $ git push --tags #推送tag到远端
8.在主目录下 更改 .podspec 文件 ,其中包括source summary description author
9.pod lib lint
出现这个
-> MyLib (0.1.0) MyLib passed validation.
10.本地测试MyLib.podspec文件
pod 'MyLib', :podspec => '../MyLib.podspec’ pod update
重启
11.创建一个管理私有源的工程
pod repo add BMSpecs https://cdgit.bitmain.com/man.yao/BMSpecs.git
12.提交私有库BM到私有源BMSpecs
pod repo push BMSpecs BMWPDemo01.podspeco
出现
Validating spec -> MyLib (0.1.0) Updating the `MySpecs' repo Already up-to-date.
Adding the spec to the `MySpecs' repo - [No change] MyLib (0.1.0) Pushing the `MySpecs’ repo
Username for 'https://git.coding.net': kensla
Password for 'https://kensla@git.coding.net': To https://
git.coding.net/kensla/MySpecs.git59b080c..b44123d master -> mast
13.如果提示
[!] Unable to find a pod with name, author, summary, or description matching `BMWorkVisitor`
解决 rm ~/Library/Caches/CocoaPods/search_index.json再search 一遍
-------------------------------------------------------分割线-------------------------------------------------------
- ERROR | [iOS] unknown: Encountered an unknown error (Unable to find a specification for `BMWSegmentTopBar` depended upon by `BMWIAttendance`
解答:
pod spec lint BMWIAttendance.podspec --sources='[https://github.com/CocoaPods/Specs.git,https://git.bitmain.com/man.yao/BMBJSpecs.git,https://cdgit.bitmain.com/man.yao/BMSpecs.git](https://github.com/CocoaPods/Specs.git,https://git.bitmain.com/man.yao/BMBJSpecs.git,https://cdgit.bitmain.com/man.yao/BMSpecs.git)'
-------------------------------------------------------分割线-------------------------------------------------------
pod repo add 完成后,不要忘记pod repo update 一下
如果让你从新输入用户名密码
在gitlab 的里面找到
Access Tokens 里面设置 你的账号密码
如果你的电脑是个新电脑
-------------------------------------------------------分割线-------------------------------------------------------
如果
pod lib lint。提示
- ERROR | spec: The specification defined in `/Users/ 。。。。。。。 .podspec` could not be loaded.
解决方式
pod spec lint --sources='git@[git.tongbin.com](http://cdgit.tongbin.com/):tongbin/BMSpecs.git,[https://github.com/CocoaPods/Specs](https://github.com/CocoaPods/Specs)' --allow-warning
pod lib lint --sources='git@[git.tongbin.com](http://cdgit.tongbin.com/):tongbin/BMSpecs.git,[https://github.com/CocoaPods/Specs](https://github.com/CocoaPods/Specs)' --allow-warnings
-------------------------------------------------------分割线-------------------------------------------------------
pod repo push <repo-name> <podspec-file-name>.podspec --allow-warnings --use-libraries
-------------------------------------------------------分割线-------------------------------------------------------
如果出现
fatal: refusing to merge unrelated histories`
如果你是git pull
或者git push
报fatal: refusing to merge unrelated histories
同理:
`git pull origin master --allow-unrelated-histories`
-------------------------------------------------------分割线-------------------------------------------------------
fatal: unable to access '': SSL certificate problem: self signed certificate
解决方法:
git config --global http.sslVerify false
-------------------------------------------------------分割线-------------------------------------------------------
pod package YXTCourseSDK.podspec --force --embedded --no-mangle --exclude-deps
打包
-------------------------------------------------------分割线-------------------------------------------------------
$ pod trunk push XXX.podspec --allow-warnings
[!] You need to register a session first.
解决方法:
pod trunk register 电子邮箱 '您的姓名' --description='macbook pro'