pod --no-repo-update,快速更新指定库到最新版本

pod 版本库写法的含义

pod 'AFNetwork', :tag => '1.0.1'  //指向具体的某一个tag 也可以使用下边简略写法
pod 'AFNetwork'                   //不显式指定依赖库版本,表示每次都获取最新版本
pod 'AFNetwork',  '2.0'           //只使用2.0版本
pod 'AFNetwork', '>2.0'           //使用高于2.0的版本
pod 'AFNetwork', '>=2.0'          //使用大于或等于2.0的版本
pod 'AFNetwork', '<2.0'           //使用小于2.0的版本
pod 'AFNetwork', '<=2.0'          //使用小于或等于2.0的版本
pod 'AFNetwork', '~>0.1.2'        //使用大于等于0.1.2但小于0.2的版本,相当于>=0.1.2并且<0.2.0
pod 'AFNetwork', '~>0.1'          //使用大于等于0.1但小于1.0的版本
pod 'AFNetwork', '~>0'            //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

Cocoapods建议采用pod ‘ AFNetwork’, ‘~> 0.1.2’这种写法,注意这里所说的最新版本只是相对本地repos库中而言

--no-repo-update

--no-repo-update 可以禁止更新本地的repos库文件,进而提高pod update速度.
有时候pod update时会特别慢,就是因为在更新repos,特别是CocoaPods的官方repo. 所以如果只是想更新到本地repos库中的最新版本可以使用

pod update   --no-repo-update

更新指定的第三方到本地repos库中最新版本,不更新工程中其他的本地第三方

pod update 第三方名字  --no-repo-update
例如:
pod update AFNetworking  --no-repo-update

注意这种带有--no-repo-update的更新,只是将工程中的库更新至本地repos中的最新版本,并不是cocoapod官网中的最新版本

而pod install,会根据指定版本添加库,如果是首次install 或者 删除了Podfile.lock文件, pod install 会安装本地repos库中的最新版.如果是非首次install,则根据pod的写法来判断是否要更新工程中的库,例如pod 'AFNetwork', '~>0.1.2' 这种写法,如果原来已经安装过0.1.2版本,Podfile.lock中就为0.1.2版本,满足~>0.1.2这个条件,那么pod install的时候是不会更新到最新版的。如果修改podfile中的为'AFNetwork', '~>0.1.6' ,而Podfile.lock中的为0.1.2,不满足条件,那么install就会更新至本地repos中的、最新的、符合条件的版本.

快速更新指定的库到线上最新版本

  1. 在 ~/.cocoapods/repos/master目录下搜索指定的库


    pod --no-repo-update,快速更新指定库到最新版本_第1张图片
    截屏2019-12-06下午3.41.29.png
  2. 手动增加缺少的版本目录和podspec文件,
    ~/.cocoapods/repos/master/Specs/.../AFNetworking/3.2.1/AFNetworking.podspec.json。 podspecspec文件的内容直接复制git上相应库的版本。


    pod --no-repo-update,快速更新指定库到最新版本_第2张图片
    截屏2019-12-06下午3.43.14.png

    然后就能搜索到最新版本了,使用以下方式直接更新工程中的AFNetworking库到最新版本

pod update AFNetworking  --no-repo-update

由于修改了文件,所以影响到了版本的状态,所以对于私有的repos仓库,可以临时保存一下修改git stash 或者用完后删除修改。对于master/specs中的修改,最好是用完后删除掉,然后使用正规方式更新repos库

pod repo update

升级cocoapods

要想成功升级cocoapods需要一个正确的操作流程和命令语句。

1、更新gem:

sudo gem update --system`

2、删除gem源:

gem sources --remove https://ruby.taobao.org/

3、修改gem源:

gem sources -a https://gems.ruby-china.com/

4、查看gem源是否是最新的:

5、升级cocoapods:

sudo gem install -n /usr/local/bin cocoapods --pre

6、查看升级后的cocoapods版本:

pod --version

更新本地repos仓库

 pod repo update

更新指定的cocoapods库

pod repo update CustomPrivatePods(这是个索引库,你可以替换成自己的)

https://www.jianshu.com/p/2c3859d161dc

你可能感兴趣的:(pod --no-repo-update,快速更新指定库到最新版本)