'pod install'不更新现有的pod
我尝试使用pod install
更新我的pod并发现它不能正确更新除非我删除原始pod。'pod install'不更新现有的pod
是否需要一些额外的步骤或是否存在导致更新失败的常见错误?
您可以添加verbose标签并查看更新期间是否显示错误。
pod install --verbose
使用--verbose
是了解发生了什么的最佳方法。也许它试图从中更新的回购存在问题。很难说。
我有同样的问题。添加详细的开关没有给出任何提示,说明为什么该pod没有更新。 – Klaas 2012-09-06 21:55:18
也许@alloy可以看看这个并提供一些帮助。我注意到当你运行pod安装时,pod并不总是删除或更新。 – 2012-09-10 15:48:11
我不确定哪个版本,但是如果您将cocoapods安装更新到最新版本,您会发现两条新命令来帮助解决此问题。
pod outdated
这将列出所有可用更新的豆荚。
pod update
这将更新在上一命令
如果你的项目是configured correctly,你应该能够删除整个Pods
目录并运行pod install
列出的豆荚。我发现这有时是在没有正确安装Pod时出现问题的最佳解决方案。
注:如果你开始得到错误像这样当你建立:
diff: /../Podfile.lock: No such file or directory
diff: /Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.
...你可能需要close and reopen the project in Xcode。
警告:确保在删除Pods目录之前,您的Pods目录中的所有文件都将被重新创建。 (即确保你没有手动修改或添加文件到吊舱目录。)
我认为这个问题的读者必须明白
荚之间的差异与安装更新荚
许多以CocoaPods开始的人似乎认为pod安装仅在您第一次使用CocoaPods设置项目时使用,并且之后使用pod更新。但事实并非如此。
- 使用
pod install
在您的项目中安装新的窗格。即使你已经有了一个Podfile并在之前运行了pod install
;所以即使你只是添加/删除豆荚到已经使用CocoaPods的项目。 - 仅当您要将特定窗格更新为较新版本时才使用
pod update [PODNAME]
。 - 仅当您想将每个窗格更新为更新的可用版本时才使用
pod update
。
每当pod install
命令运行时间 - 并下载和安装新荚 - 它写它已经安装的版本,每个豆荚,在Podfile.lock
文件。该文件会跟踪每个吊舱的安装版本并锁定这些版本。 运行pod install
时,它仅解决了Podfile.lock
中未列出的Pod的依赖关系。 对于Podfile.lock
中列出的窗格,它下载Podfile.lock
中列出的显式版本,而不尝试检查是否有更新版本可用 对于Podfile.lock
中未列出的窗格,它将搜索与Podfile中描述的内容相匹配的版本(如在pod 'MyPod', '~>1.2'
)
什么是你试图运行的完整命令?你从它得到什么输出? – 2012-07-24 22:02:34