pod install 和 pod update 的区别和使用

1. 先看下官方引用TL;DR的说明:

  • Use pod install to install new pods in your project. Even if you already have a Podfile and ran pod install before; so even if you are just adding/removing pods to a project already using CocoaPods.
    (pod install 用于安装新添加的pods,只要编辑过podfile,如增删改之后,就pod install一下)
  • Use pod update [PODNAME] only when you want to update pods to a newer version.
    (pod update 可以加指定的pod名,用于更新pod库代码到一个新的版本)

2. 再结合应用场景白话一下:

pod install

pod install 运行时干了几件事:

  1. 下载安装 新的 Pods;
  2. 把每个 Pod 安装的 版本 写入 Podfile.lock,此文件跟踪每个 pod 的已安装版本并锁定这些版本;
  3. 如果pod库已经安装过,当运行时pod install时,它只会解析Podfile.lock 文件;
    3.1 对于pod Podfile.lock中列出的显式版本 ,对应下载,而不尝试检查是否有更新的版本可用
    3.2 对于pod Podfile.lock中尚未列出的 ,它会搜索与Podfile(如pod ‘MyPod’, ‘~>1.2’)中描述的版本相匹配的版本
pod update
  1. 如果指定name (pod update PODNAME),CocoaPods 会尝试查找 pod 的更新版本PODNAME,而不考虑Podfile.lock. 它会将 pod 更新到可能的最新版本(只要它符合您的版本限制Podfile)。

  2. 如果您在pod update没有 pod 名称的情况下运行,CocoaPods 会将您列出的每个 pod 更新Podfile到可能的最新版本。

  3. 还有个命令 pod outdated,当你运行时pod outdated,CocoaPods 会对比Podfile.lock(每个 pod 当前安装的版本)中的pod库版本,列出所有版本更新。这意味着如果您pod update PODNAME在这些 pod 上运行,它们将被更新——只要新版本仍然符合pod ‘MyPod’, ‘~>x.y’.

总结

重点区别在于:需不需要更新pod库的版本。

  1. pod install 安装的pod库,被锁死版本号在podfile.lock中,每次pod install,在不指定版本号的情况下,沿用旧版本。
  2. 这时候如果想更新版本了,pod update 才真正发挥其作用。
  3. 附官网关于两个命名的对比:戳这里跳cocoaPods官网
  4. 官网举例说明podfile写死版本号,并不能保证所有协同开发者用同一版本号的特例,值得注意。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值