96

我有一个工作项目,现在使用 pod 文件已经有几个星期了。当我得知我的一些 pod 已更新时,我尝试“pod install”时遇到了这个奇怪的错误

    Analyzing dependencies
    [!] Pod::Executable pull

    Updating 1337455..e9f6e93
    error: The following untracked working tree files would be overwritten by merge:

AeroGear-Push/0.7.0/AeroGear-Push.podspec

AeroGear/1.2.0/AeroGear.podspec

BrynKit/1.3.0/BrynKit.podspec

BrynKit/1.3.1/BrynKit.podspec

CSURITemplate/0.3/CSURITemplate.podspec

EXiLE/1.0.2/EXiLE.podspec

FlurrySDK/4.2.3/FlurrySDK.podspec

FoundationExtension/0.39.1/FoundationExtension.podspec

FoundationExtension/0.39/FoundationExtension.podspec

GCDObjects/0.0.1/GCDObjects.podspec

HTAutocompleteTextField/1.2.1/HTAutocompleteTextField.podspec

HTAutocompleteTextField/1.2.2/HTAutocompleteTextField.podspec

HTAutocompleteTextField/1.2/HTAutocompleteTextField.podspec

IDMPhotoBrowser/1.1.2/IDMPhotoBrowser.podspec

Igor/0.5.0/Igor.podspec

KFOpenWeatherMapAPI/0.2.0/KFOpenWeatherMapAPI.podspec

NGSegmentedViewController/0.1.1/NGSegmentedViewController.podspec

PPiFlatSegmentedControl/1.3/PPiFlatSegmentedControl.podspec

PiwikTracker/2.0.0/PiwikTracker.podspec

SDWebImage/3.4/SDWebImage.podspec

libwbxml/0.11.2/libwbxml.podspec

wbxml/0.0.1/wbxml.podspec

    Please move or remove them before you can merge.

    Aborting

另一篇文章建议使用“rm -rf ~/.cocoapods”命令行,但这导致我的 cocoapods 停止为所有项目一起工作,现在我尝试“pod install”的项目我得到“无法找到规范..' 错误

[!] 无法找到CorePlot (= 1.3).

4

10 回答 10

235

如果您在 2014 年 1 月 30 日或之后登陆这里,那么 CocoaPods 的中断会导致此问题。请阅读此处的相关博客文章:http: //blog.cocoapods.org/Repairing-Our-Broken-Specs-Repository/

或者做:

pod repo remove master
pod setup
于 2014-01-30T22:21:33.040 回答
106

我自己解决了这个问题,诀窍是用来$sudo rm -rf ~/.cocoapods清理 cocoapods master repo,然后pod install毫无问题地工作。

希望这可以帮助遇到此问题的其他人

于 2013-08-14T06:35:20.903 回答
18

100% 无效的单行命令是:

sudo rm -rf ~/.cocoapods && pod setup && pod install

我在 GitHub 跟踪器上创建了问题:#2185

而官方的回答是:

这是 @irrationalfab 已通过提交 CocoaPods/CLAide@5e023ab 修复的问题。所以该修复应该在 CocoaPods 的下一个版本中可用。耐心一点

于 2014-06-02T16:04:34.750 回答
16

如果您需要一个干净的主规范回购,您可以尝试

cd ~/.cocoapods/master
git reset --hard

或者,如果您使用的是 CocoaPods 0.23+,请使用~/.cocoapods/repos/master.

于 2013-08-14T07:10:00.847 回答
8

您将不得不手动删除 Specs 存储库的任何本地副本并重新克隆 Specs 存储库的新版本。您可以使用以下命令执行此操作: $ sudo rm -fr ~/.cocoapods/repos/master $ pod setup

于 2014-04-09T14:24:08.320 回答
6

当我的项目变得很大并且我有一个很大的 pod 文件时,我经常遇到这个问题。

我的解决方案如下:

pod repo remove master
pod setup
pod install
于 2015-09-16T14:32:47.393 回答
2

您需要修复权限和文件所有者

$ sudo chown -R user ~/Library/Caches/CocoaPods
$ sudo chown -R user ./Pods
$ sudo chown -R user ./Podfile.lock
$ sudo chmod -R 777 ./Pods

$ pod update/setup
于 2014-04-18T06:24:59.070 回答
2

哇,这是一个真正的痛苦,每个人似乎都有不同的解决方案。对我来说,这个解决方案有几次在多台机器/环境上工作:

显然有一个错误psych导致了问题。

sudo gem uninstall psych
sudo gem install psych -v 2.0.0

在 CococaPods repo 上有一个关于这个问题和这个修复的冗长对话。

于 2015-07-13T20:43:50.993 回答
0

你可以这样试试。pod spec lint --sources=' https://git.oschina.net/yourname/jqcpodspec,https://github.com/CocoaPods/Specs ' --allow-warnings --use-libraries

如果您的规范通过验证,则 pod repo push JQCPodSpec FMCommonModelLib.podspec --sources=' https://git.oschina.net/yourname/jqcpodspec,https://github.com/CocoaPods/Specs ' --allow-warnings --使用库

于 2017-04-18T08:40:01.893 回答
0

只是为了分享我自己对这个问题的修复:

由于这是一个 git 问题,您可以使用简单的 git 命令来解决它(参见 @AdamSharp 的帖子)。对我有用的是运行

git clean -d -f

~/.cocoapods/repos/master. 这会递归地从 repo 中删除任何未跟踪的文件和目录。我鼓励你运行:

git clean -d -f --dry-run

在您实际执行任何操作之前,您可以看到它会做什么。如果它破坏了您的 CocoaPods 主存储库,只需删除~/.cocoapods/repos/master并运行pod repo update.

于 2015-09-15T13:56:36.827 回答