cocoa豆 – '荚安装'永远
我试图用pod install
命令更新现有的pod install
,但是它需要永远运行。
详细模式显示它卡在以下行(永远)
更新spec repo
master
$ / usr / bin / git pull –no-rebase –no-commit
卡住后没有networking活动。
我遇到了同样的问题,我通过运行下面的命令解决了这个问题
pod repo remove master pod setup pod install
你可以跑
pod install --verbose
看看幕后发生了什么..至less你会知道它在哪里停滞不前(这可能是一个git克隆操作,由于你的networking速度太慢而花费的时间太长了)
有一个更好的想法,为什么它似乎卡住(运行详细可以让你这样的事情
-> Installing Typhoon (2.2.1) > GitHub download > Creating cache git repo (~/Library/Caches/CocoaPods/GitHub/0363445acc1ed036ea1f162b4d8d143134f53b92) > Cloning to Pods folder $ /usr/bin/git clone https://github.com/typhoon-framework/Typhoon.git ~/Library/Caches/CocoaPods/GitHub/0363445acc1ed036ea1f162b4d8d143134f53b92 --mirror Cloning into bare repository '~/Library/Caches/CocoaPods/GitHub/0363445acc1ed036ea1f162b4d8d143134f53b92'...
是要找出你克隆的git repo的大小..如果你是从github克隆..你可以使用这种格式 :
/repos/:user/:repo
所以例如要了解上述回购types
https://api.github.com/repos/typhoon-framework/Typhoon
和返回的JSON将有一个大小的关键,值..所以上述返回
"size": 94014,
这大约是90MB ..难怪它是永远! (顺便说一句,当我写这个..它刚刚完成..哈!)
更新: 在它开始下载你的podfile中列出的依赖之前 ,cocoapods所做的一件事就是下载/更新自己的repo(他们称之为设置Cocoapods Master repo ..看看这个:
pod install --verbose Analyzing dependencies Updating spec repositories $ /usr/bin/git rev-parse >/dev/null 2>&1 $ /usr/bin/git ls-remote From https://github.com/CocoaPods/Specs.git 09b0e7431ab82063d467296904a85d72ed40cd73 HEAD ..
坏消息是,如果你按照上面的程序来找出有多大的cocoapod回购是..你会得到这个 :“大小”:614373,..这是很多 。
所以为了得到一个更准确的方法知道多久才需要安装自己的回购..你可以设置cocoapods主回购单独使用pod setup
:
$ pod help setup Usage: $ pod setup Creates a directory at `~/.cocoapods/repos` which will hold your spec-repos. This is where it will create a clone of the public `master` spec-repo from: https://github.com/CocoaPods/Specs If the clone already exists, it will ensure that it is up-to-date.
然后运行pod install
可能的解决scheme:
- 更新cocoa豆可能解决这个问题
- 清洁并重新安装豆荚
更新CocoaPods
打开terminal并键入:
$ sudo gem update cocoapods
重新安装Pods
步骤1
从你的项目中删除所有的豆荚( 棘手的部分 ):
手动
- 删除项目构build阶段中的所有Podlogging(红色标记)
- 删除Frameworks文件夹下的libPods.a
- 现在前往项目目录并删除Podfile.lock *,** Pods文件夹和工作区(从垃圾桶中删除 )。
自动使用CocoaPods De-Integrate
安装
$ [sudo] gem install cocoapods-deintegrate
跑
$ pod deintegrate
第2步
在这里,我们再次安装Pods
改变你的位置你的目录
$ cd yourprojectdirectory
通过添加你需要的行来编辑 podfile
$ open -a Xcode podfile
要么
$ nano podfile
最后再次安装该吊舱
$ pod install
希望这可以帮助
我find了解决问题的另一种方法
pod install --verbose --no-repo-update
它适用于我。
正如这里指出的git-remote-http进程在后台运行 。 我从Activity Monitor启动了这个进程,并退出了这个进程,在POD INSTALL之后恢复了停留在“ 更新本地规格库 ”上的pod进程
截至2016年8月15日,回购是一个巨大的2.39GB文件。 我打开活动监视器,看看terminal在做什么。 正在下载这个巨大的文件。
尝试清除您的CocoaPodscaching,重新下载并重新安装所有的豆荚,如下所述
rm -rf "${HOME}/Library/Caches/CocoaPods" rm -rf "\`pwd\`/Pods/" pod update
这对我来说是有效的:
- 删除〜/ .CocoaPods下的所有内容
- 删除现有的podfile.lock和Pods文件夹。
- 保持你的PodFile完好。
- 运行'sudo gem install cocoapods –verbose'
- 运行“pod install –verbose”
我build议使用–verbose标志,因为terminal在命令行为上进展不是很好。 详细选项帮助了很多!
只需按照以下步骤进行:
下载https://github.com/CocoaPods/Specs/archive/master.zip
在terminal中运行下面的命令:
pod setup --verbose
在terminal中打开新标签并运行
mv ~/.cocoapods/repos/master/.git ~/tempSpecsGitFolder
打开master.zip(解压缩)
mv Specs-master ~/.cocoapods/repos/master
mv ~/tempSpecsGitFolder ~/.cocoapods/repos/master/.git
cd [项目文件夹]
荚安装 – 没有回购更新
正如其他答案中提到的那样,因为cocoapods master repo的大小非常庞大, 这个时间可以通过下面的步骤减less。
1)在你的github仓库上创build一个私有规格文件path。 提供这个pathhttps://github.com/yourpathForspecs.git '作为你的podfile中的一个源代码。
2)确定所有你需要的仓库和它们的依赖关系(在这些仓库的cocoapods上的podspec.json文件中提到),并从cocoapods获取他们的podspec.json文件。 添加这些podspec.json文件与他们的文件夹(说螺栓的最新版本文件夹)在这个规格库。
3)删除podfile中的源代码“ https://github.com/CocoaPods/Specs.git ”
4)荚更新
这将需要更less的时间,因为这需要获取和下载所需的豆荚,而不是整个cocoapods存储库。 在我的情况下,它将吊舱更新时间从15-20分钟平均减less到最多3-4分钟。
Pod安装步骤
首次开放docker:
chmod ow /usr/local sudo chmod ow /usr/local sudo gem install cocoapods
如果您的系统中已经安装了pod,请按照以下步骤操作
sudo gem install cocoapods -V sudo gem update --system pod setup cd /Users/apple/Desktop/Black\&WhiteImageDemo pod init open -a Xcode Podfile pod install
我有同样的问题,然后我意识到,我仍然在“非常糟糕的networking”上运行networking调节器。 解决这个问题。
希望能帮助别人。
我解决了这个问题:
rm -fr ~/Library/Caches/CocoaPods && \ gem update --system && \ gem update && \ gem cleanup && \ pod setup
参考: http : //blog.cocoapods.org/Repairing-Our-Broken-Specs-Repository/
有时也发生在我身上,我只是:
pod clean pod update --verbose
即使我也这么想。 如果你打开Activity Monitor
你可以看到它正在下载GIT的名字。
我发现这个技巧很有用。