我不确定这是否是由我的Git配置或CocoaPods引起的问题,但我在cocoapod端遇到了烦恼。我们的团队配置使用CocoaPods和Git,我们保持Pod.lock文件版本以及Podfile。问题出在团队内部的提交之间。 我们在Podfile中包含了外部源代码,并且在一个人提交后,生成的Podlock包含这样的部分:
EXTERNAL SOURCES:
SubModuleOne:
:path: ./SubModules/SubModuleOne
SubModuleTwo:
:path: ./SubModules/SubModuleTwo
SubModuleThree:
:path: ./SubModules/SubModuleThree
在另一台机器上拉动和重新定位并尝试编译后,我收到有关podlock过期的警告,并且需要运行pod install
。
在这样做之后,项目运行并编译,但在上述路径周围添加了引号。像这样:
EXTERNAL SOURCES:
SubModuleOne:
:path: "./SubModules/SubModuleOne"
SubModuleTwo:
:path: "./SubModules/SubModuleTwo"
SubModuleThree:
:path: "./SubModules/SubModuleThree"
如果我提交这些,那么它会在其他机器上引起同样的问题。尽管从功能上看,两者似乎都达到了相同的效果,但是在每次提交和合并时都需要进行不必要的pod安装,这很烦人。