美文网首页cocoaPods
pod update 和pod install 区别

pod update 和pod install 区别

作者: 寂寞先森666 | 来源:发表于2020-07-21 10:49 被阅读0次

    Podfile.lock 是在第一次运行 pod install 时生成的


    屏幕快照 2019-10-30 下午4.56.18.png
    屏幕快照 2019-10-30 下午5.00.54.png

    Podfile.lock这个文件是用来锁定版本的,如果没有指定版本的话,如下面这种写法

    pod 'AFNetworking' (没有指定版本)
    

    会有两种情况:
    第一、存在Podfile.lock,则根据该文件的锁定版本进行
    第二、不存在Podfile.lock,则检索最新版本

    (pod install优先遵循 Podfile 里指定的版本信息;其次遵循 Podfile.lock 里指定的版本信息来安装对应的依赖库)

    但是我想在存在Podfile.lock版本被锁定的情况下进行更新到最新版本,该怎么做?

    查看当前远程库里是否有发布新版本

    pod outdated --no-repo-update    (该命令只针对存在新版本的库)
    
    shoubindeMacBook-Pro:helloWorld shoubintao$ pod outdated --no-repo-update 
    Analyzing dependencies
    The color indicates what happens when you run `pod update`
    <green>  - Will be updated to the newest version
    <blue>   - Will be updated, but not to the newest version because of specified version in Podfile
    <red>    - Will not be updated because of specified version in Podfile
    
    The following pod updates are available:
    - AFNetworking 3.1.0 -> 3.2.1 (latest version 3.2.1)
    
    [!] Automatically assigning platform `iOS` with version `12.2` on target `helloWorld` because no platform was specified. Please specify a platform for this target in your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`.
    
    [!] There are duplicate dependencies on `AFNetworking` in `Podfile`:
    
    - AFNetworking
    - AFNetworking (~> 3.2.1)
    

    发现有3.2.1的新版本

    pod update --no-repo-update
    
    shoubindeMacBook-Pro:helloWorld shoubintao$ pod update --no-repo-update
    Update all pods
    Analyzing dependencies
    Downloading dependencies
    Installing AFNetworking 3.2.1 (was 3.1.0 and source changed to `https://cdn.cocoapods.org/` from `trunk`)
    Generating Pods project
    Integrating client project
    Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.
    
    [!] Automatically assigning platform `iOS` with version `12.2` on target `helloWorld` because no platform was specified. Please specify a platform for this target in your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`.
    

    使用pod install 的话会被Podfile.lock文件版本锁定
    但是如果使用pod update可以忽略不理睬Podfile.lock文件,直接更新远程库中的最新版本

    屏幕快照 2019-10-30 下午5.22.18.png 屏幕快照 2019-10-30 下午5.22.40.png

    结果已经更新到了最新版本3.2.1

    相关文章

      网友评论

        本文标题:pod update 和pod install 区别

        本文链接:https://www.haomeiwen.com/subject/vhzovctx.html