美文网首页pod & git
由于疏忽Podfile.lock文件带来的困扰

由于疏忽Podfile.lock文件带来的困扰

作者: 長茳 | 来源:发表于2021-03-13 14:29 被阅读0次

写在前面

相信如果你们是多人开发的,或多或少可能遇到过由于一时疏忽Podfile.lock文件,而带来了困扰.如果你是单人开发那你就不存在说有Podfile.lock文件的问题.

一. Podfile.lock 文件的作用

最后一次更新Pods时,记录所有第三方框架的版本号.
Podfile.lock文件主要包含:PODSDEPENDENCIESSPEC REPOSSPEC CHECKSUMSPODFILE CHECKSUM,用来记录每个pod的版本号、依赖的其他库和每个库对应的podspec.json文件的checksum(SHA1的值).通过这些信息可以确保多人协作时,大家使用的都是相同版本的第三方库.

二. Pod常用指令区别

pod install

  • 如果Podfile.lock文件不存在,会根据Podfile文件安装第三方框架,并生成Podfile.lock文件
  • 如果Podfile.lock文件存在,会根据Podfile.lock文件的版本号来安装第三方框架

pod update

  • 根据Podfile文件安装第三方框架
  • 将所有第三方框架更新到最新版本,并且创建一个Podfile.lock文件覆盖掉原Podfile.lock 文件

pod install/update --no-repo-update

安装框架前不会执行pod repo update,意味着不去检查服务器版本,直接使用本地缓存的框架版本

pod install/pod update过程简述

  • 在通过pod installpod update指令安装框架前,都会先执行pod repo update指令,将服务器最新的框架下载到本地,项目中是否安装最新版本的框架,取决于安装方式:pod install(指定版本)和pod update(最新版本)
  • 在第一次执行pod install指令时,podfile.lock还不存在,会根据podfile中的说明来集成框架.如果指定框架版本号,安装指定版本,如果未指定,安装最新的,并自动生成podfile.lock文件
  • 当以后再次执行pod install指令时,会根据podfile.lock中记录的框架版本号来安装框架.
  • 即便服务器中有最新的版本,通过pod install指令也不会安装最新的第三方框架,只会根据podfile.lock中记录的版本来安装

项目中的运用

  • Podfile.lock应该加入版本控制,保证小伙伴们的依赖库版本一致,防止出现难以发现的 bug.另外,在初始创建项目的时候就应该加入版本控制.
  • Podfile的语法最好能尽量严谨,最好指定明确的依赖库版本.
  • 理解 pod installpod update 的区别以及它们对 Podfile.lock 的影响,合理使用.一般就是多用 pod install,在需要时使用 pod update.

写在后面

Podfile更像是一个版本约束,而Podfile.lock才是你真正使用的版本.如果让你去确定你app使用某一个三方库的版本,你不应该找Podfile,而是应该找Podfile.lock文件.

最后和谐学习,不急不躁.我还是我,颜色不一样的烟火.

相关文章

  • 由于疏忽Podfile.lock文件带来的困扰

    写在前面 相信如果你们是多人开发的,或多或少可能遇到过由于一时疏忽Podfile.lock文件,而带来了困扰.如果...

  • Sourcetree Podfile.lock文件 由于文件大

    1、如下图,Podfile.lock文件无法进行差异对比 2、百度了一下,说是文本大小限制问题,如下图,修改了大小...

  • (四)Podfile vs. Podfile.lock

    下面是 Podfile 与 Podfile.lock 两个文件的对比: Podfile: Podfile.lock:

  • pod安装

    pod update 会更新Podfile.lock文件pod install 不会更新Podfile.lock文...

  • 疏忽造成的困扰

    本是一天新的开始,没想到是自己一时的大意疏忽造成了一天的困扰。 这件事源于之前自己做的一张报表开始,引发了这一天的...

  • pod update 和pod install 区别

    Podfile.lock 是在第一次运行 pod install 时生成的 Podfile.lock这个文件是用来...

  • CocoaPods

    1、 不要删除 Podfile.lock,并且必须签入到 VCS 中。不能把Podfile.lock文件加入到.g...

  • 由于我的疏忽,犯错了……

    太郁闷了! 今天,由于我的疏忽,我的代步车“小白”被刮蹭了,“伤势”不轻,右边侧门不仅被刮了好几道口子,有一处底漆...

  • 常用pod命令

    pod init: 创建Podfile文件 pod install:会根据podfile.lock文件中指定的po...

  • pod 命令

    pod init: 创建Podfile文件 pod install:会根据podfile.lock文件中指定的po...

网友评论

    本文标题:由于疏忽Podfile.lock文件带来的困扰

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