cocoapods manifest.lock Podfile.lock 文件探究

cocoapods manifest.lock Podfile.lock 文件探究
发现 这两个文件内容完全一样,好奇为什么cocoapods需要两个lock文件。

Podfile.lock和Manifest.lock:

项目中集成 cocoapods 的时候,运行 pod install 后,项目根目录中会生成Podfile.lock,而Pods目录中会有Manifest.lock。
Xcode 编译项目的时候,会执行 Build Phases 中的 Check Pods Manifest.lock 脚本,这个脚本会比对Podfile.lock和Manifest.lock,如果两个文件不相同就会报错。

Podfile.lock是什么:

Podfile.lock 文件主要包含三个块:PODS、DEPENDENCIES、SPEC CHECKSUMS,用来记录每个pod的版本号、依赖的其他库和每个库对应的podspec.json文件的 checksum(SHA-1算法)。通过这些信息可以确保多人协作的时候,大家使用的是相同版本的第三方库。

项目中遇到 podfile.lock 中 checksum 部分的冲突,其实就是由于FBRetainCycleDetector.podspec.json文件的checksum不一致。

通过对比了有冲突的同事 mac 中生产的FBRetainCycleDetector.podspec.json文件,发现主要是repuires_arc 字段中的文件列表顺序不同。

参考 链接:https://www.jianshu.com/p/113b96c9a8e4

Posted in iOS

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据