一个新手,我的实习中经历了各种工具。。
Cocoapods
* 更新ruby
终端输入如下命令(把Ruby镜像指向taobao,避免被墙,你懂得)
gem sources --remove https://rubygems.org/
gem sources -a https://ruby.taobao.org/
gem sources -l (用来检查使用替换镜像位置成功)
* 下载安装CocoaPods
终端输入:sudo gem install cocoapods
输入完这一句代码后可能会出现一个错误
ERROR: While executing gem ... (Gem::DependencyError)
Unable to resolve dependencies: cocoapods requires cocoapods-core (= 0.33.1), claide (~> 0.6.1), cocoapods-downloader (~> 0.6.1), cocoapods-plugins (~> 0.2.0), cocoapods-try (~> 0.3.0), cocoapods-trunk (~> 0.1.1), nap (~> 0.7)
解决方法:sudo gem update --system
但是出现了另一个错误:
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj
于是上网查找了一下 问了一些朋友,于是在一个朋友的帮助下 得到了答案,他给我一个连接上面是一个网友的总结。他是在Stackoverflow上找到的解决方法(在此推荐网友可以多去这个网站看看,上面有很多中外的大牛回答的问题,对工作很久的大牛都是知识的宝藏,更何况对于我们这些菜鸟而言呢)
解决方法如下
在终端中输入:sudo nvram boot-args="rootless=0"; sudo reboot
然后你的电脑会重启
之后再输入 sudo gem install cocoapods -V
就可以了
不放心的话输入
pod --version
0.37.2 //显示出版本就说明成功了
这时候就会显示出不得pod的版本
这样我们的cocoapods就算安装成功了 ,接下来我们就是要学习怎么用他了
pod lib lint 和 pod spec lint的区别:lib校验本地合格,spec校验文件合格并且校验远端,后者校验内容更多。
cocoapods 安装指定版本(回退)
sudo gem uninstall cocoapods :卸载cocoapods
sudo gem install cocoapods --version 0.24.0
Pod私有化:MJRefresh为例。
1.git clone https://github.com/CoderMJLee/MJRefresh.git 将需要私有化的代码准备好
2.配置MJRefresh.podspec 为自己的信息,注意source指向私有代码库的git地址。:
git@git.n.xiaomi.com:lipeng8/mjrefresh.git
3.将本地代码推送到自己的代码库。
git remote add origin git@git.n.xiaomi.com:lipeng8/mjrefresh.git
git add .
git commit
git push origin master
git tag 4.3.12 (指定版本信息)
git push —tags
再提交一次
4.将私有spec repo添加关联信息到本机:
$ pod repo add REPO_NAME SOURCE_URL
即:pod repo add PodSpec git@git.n.xiaomi.com:xmhycommonkit/podspec.git
5.检查pod的合法性,然后推送
pod spec lint MJRefresh.podspec —verbose
pod repo push PodSpec MJRefresh.podspec:此处的PodSpec 已经在步骤4中关联好了,所以能够识别推送的目的地。