Xcode如何知道在更改分支时是否需要进行pod安装



突然想到一个问题。当我更改分支并且它有一些pod更改时,Xcode失败了,构建会显示一条错误消息,告诉你安装pod(我们都知道这一点(。

问题是Xcode是如何知道这一点的?我不认为Xcode在查看Podfile.lock的散列,Xcode有其他方法可以知道pod的变化吗?

这不是纯粹的Xcode。

显示的错误是error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.,对吗?这是一条硬编码到Shell脚本中的消息,CocoaPods将其添加到Xcode工作空间的构建阶段:

diff "${PODS_PODFILE_DIR_PATH}/Podfile.lock" "${PODS_ROOT}/Manifest.lock" > /dev/null
if [ $? != 0 ] ; then
echo "error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation." >&2
exit 1
# ...

脚本通常在"编译源代码"步骤之前添加。

最新更新