cocoapods看这个就够了

cocoapods安装

安装 CocoaPods

(在安装之前,建议先安装上rvm(ruby version manager)工具)
安装最新版本
sudo gem install -n /usr/local/bin cocoapods (推荐方式,注意更新~/.cocoapods/repo/master需要很长时间,需要稳定网络,耐心等待,也可以试着换源,或者直接clone本地替换文件夹) 安装指定版本sudo gem install -n /usr/local/bin cocoapods -v 1.0.0

cocoapods基本使用

1.在项目中创建Podfile文件
pod init

2.编辑Podfile文件,设置需要集成的库

platform :ios, '9.0'

target 'pccTestOC0518' do
  pod 'Masonry'
  #pod 'ReactiveCocoa', '~> 7.0'
  pod 'YYKit'
  pod 'MBProgressHUD'
  pod 'NSLogger'

end

3.pod install/update会在项目目录中生产pccTestOC0518.xcworkspace然后打开该工程即可;

使用cocoapods遇到的问题及解决方式汇总

Q1:pod search error

清理缓存sudo rm -rf ~/Library/Caches/CocoaPods

Q2:多版本pod并存

主要是解决旧项目Podfile中在新版本的pod中update会有依赖错误,可以用指定版本的pod来操作,而新的工程可以使用新版本的pod

1、 安装rvm(Ruby Version Manager)工具

//可能需要翻墙
$ curl -L get.rvm.io | bash -s stable
// 要想使用 'rvm'命令需要执行下面一行代码
$ source ~/.rvm/scripts/rvm

2、安装多版本ruby及切换

// 1.列出可安装的ruby版本
> rvm list known

// 2.列举当前列表
> rvm list

// 3.安装指定版本ruby
rvm install 2.5.5

// 4.卸载指定版本
rvm remove 2.4.1

// 5.切换且设置成默认版本
> rvm use 2.3 [--default]

3、可以在不同的ruby环境下安装不同版本的cocoapods
sudo gem install cocoapods -v 1.4.0

Q3:解决不同项目需要不同版本的pod,代替Q2的另外一种处理

直接安装多版本pod,然后使用以下命令指定pod install版本
pod _0.35.0_ install, pod _0.38.2_ install

Q4:如何创建个人私有pod仓库

  • git仓库至少需要两个,一个用于管理私有库对应版本的podspec文件,一个用于存放私有库的源文件
  • 创建pod仓库流程
    1. 创建一个私有的Spec Repo,用于管理私有库对应版本的podspec文件
    2. 创建pod私有库所需要的项目工程文件,并上传到私有库
    3. 创建pod所对应的podspec文件,并进行验证/测试
    4. 向私有的Spec Repo中提交podspec
创建一个私有repo
# pod repo add CCSpecs https://github.com/buvtopcc/CCSpecs.git
   查看现有的podspec源
# ls ~/.cocoapods/repos
 
创建pod项目
# pod lib create NAME

commit项目工程的源文件| 
 # git add .
 # git commit -m "first commit"
 # git remote add origin https://github.com/buvtopcc/CCUtils.git
 # git push -u origin master
 # git tag -m "first release" 0.0.1
 # git push --tags     #推送tag到远端仓库

验证podspec的合法性
# pod lib lint NAME.podspec

向私有的Spec Repo(如:CCSpecs)中提交podspec
# pod repo push CCSpecs __NAME__.podspec
向公共的repo提交podspec
# pod trunk push __NAME__.podspec  (--verbose)

Q5: 命令行tag操作命令

#查看本地tag
git tag

#创建tag
git tag -a v1.0 -m "commit comment message"

#创建非head的tag
$ git tag -a v1.0 commitId (通过git log查)

#推送tags到远程仓库
git push [origin] --tags
git push origin  标签名

#查看某个tag的信息
git show 标签名

#切换到某个tag
与切换分支命令相同,用git checkout 标签名 (但现在处于一个空的分支上)
git checkout master 切换master代码分支

#删除本地tag
git tag -d  标签名

#删除远程仓库tag
git push origin :refs/tags/标签名

你可能感兴趣的:(cocoapods看这个就够了)