我正在从 git repo 克隆一个项目,但是当我执行pod install
第一行时,我看到的是“设置 CocoaPods Master repo”,之后我看不到任何东西,控制台就停在那里。
我不知道发生了什么。有谁知道这里发生了什么?为什么 CocoaPods 会停在那里?
我正在从 git repo 克隆一个项目,但是当我执行pod install
第一行时,我看到的是“设置 CocoaPods Master repo”,之后我看不到任何东西,控制台就停在那里。
我不知道发生了什么。有谁知道这里发生了什么?为什么 CocoaPods 会停在那里?
您可以尝试以详细模式运行:
pod install --verbose
这将向您展示可可豆荚的用途:
Setting up CocoaPods master repo
Cloning spec repo `master` from `https://github.com/CocoaPods/Specs.git` (branch `master`)
$ /usr/bin/git clone 'https://github.com/CocoaPods/Specs.git' master
Cloning into 'master'...
对我来说,上述步骤花了很长时间,因为回购(2016 年 12 月)现在是1.1 GB
pod install
或pod setup
在您第一次运行它时获取带有历史记录的整个仓库。你不需要那个提交历史。
pod setup
Ctrl +C
cd ~/.cocoapods/repos
git clone --depth 1 https://github.com/CocoaPods/Specs.git master
良好的网络连接(4Mbps)大约需要 2 分钟。master
目录大约 519M 大。
试试这个命令来跟踪它的工作。
while true; do
du -sh ~/.cocoapods/
sleep 3
done
问题是你没有安装命令行工具,我相信。尝试在终端中运行:
sudo gem update --system
之后从Apple下载命令行工具, 只需搜索“命令行工具”并为您的操作系统下载正确的版本。安装后在终端中运行:
sudo gem install cocoapods
pod setup
可能这些信息会有所帮助:
官方回答: http: //blog.cocoapods.org/Master-Spec-Repo-Rate-Limiting-Post-Mortem/
作为这次讨论的结果https://github.com/CocoaPods/CocoaPods/issues/4989
简而言之: CocoaPods 存储库经历了从 GitHub 获取的大量数据,这就是问题所在。自版本 1.0.0.beta.6 起已提供更改。
本文档中的提示:
If for whatever reason you cannot upgrade to version 1.0.0 just yet, you can perform the following steps to convert your clone of the Master spec-repo from a shallow to a full clone:
$ cd ~/.cocoapods/repos/master
$ git fetch --unshallow
我第一次安装的技巧:
1. pod setup
2. Ctrl+C
After that I could find ~/.cocoapods/repos/ empty directory
3. Download https://github.com/CocoaPods/Specs/archive/master.zip
4. unpack it to ~/.cocoapods/repos/
5. Move to project folder
6. pod install --no-repo-update
今天大约需要15分钟
当 CocoaPods 这样做时,它会将整个规范 repo 下载到~/.cocoapods
. 这可能需要一段时间,具体取决于您的连接。我会尝试先明确地这样做pod setup
以上没有对我有用,所以这就是有效的:
pod setup
Ctrl +C
pod repo remove master
cd ~/.cocoapods/repos
git clone https://github.com/CocoaPods/Specs master
一旦完成,它就起作用了。
干杯!
我尝试过的比克隆回购更快的方法:
pod setup
~/.cocoapods/repos
pod install --no-repo-update
在我的项目文件夹中之后我终于可以看到正在安装的 pod
祝你好运!
编辑: zip 大小为 144 MB(2017 年 7 月 6 日)
我使用了以下 4 个命令
cd ~/.cocoapods/repos
git clone "https://github.com/CocoaPods/Specs" master --depth 1
cd master
git fetch --unshallow
pod setup
我按预期花时间,但至少我不必走到屏幕前想知道背景发生了什么。
pod setup --verbose
我现在正在运行上述命令,但正如@Joe Blow 所提到的,它绝对没有显示任何有关进度的信息。
但是,如果您在 Mac 上打开活动监视器(Windows 上的任务管理器?),在“网络”选项卡下,您将看到一个名为“git-remote-https”的进程,它显示“接收字节”的大小正在增加。下载大约 300MB 后它停止了,然后我可以在终端窗口中看到进一步的进展。
我有一个我目前使用的替代解决方案。通过将 Podfile 中的存储库 URL 更改为:
source 'https://cdn.cocoapods.org/'
变化:
- source 'https://github.com/CocoaPods/Specs.git'
+ source 'https://cdn.cocoapods.org/'
这种情况只发生一次。
主仓库有 +-1GB (2016 年 11 月)。
要跟踪进度,您可以使用活动监视器应用程序并查找git-remote-https
.
下次它(pod setup
或pod repo update
)只会快速更新~/.cocoapods/repos
.
我正在使用监视下载进度
while true;
do
du -sh ~/.cocoapods/;
sleep 3;
done
进展非常缓慢……而且失败了几次。但不知何故,在使用此命令行增加了 git 缓冲区限制后,git config --global http.postBuffer 2M
下载速度大大提高,在./cocoapods
文件夹上总共下载 347 Mb 后,进度似乎停止了,网络活动也停止了。但等了几分钟后,发现 cocoapod 正在验证和提取 repo,并使总大小达到 853 Mb。
笔记:我在 2016 年 10 月 23 日做。
您将不得不删除 repo 并重新设置它...
pod repo remove master
pod setup
从 cocoapods 1.7.2 开始,您可以使用 cdn 而不是 github。它的速度很快,而且不会挂起。:) 从 cocopods 1.8.0 开始,cdn 是默认的。
要在 Podfile 中使用 CDN 源:
如果您没有私人规格:
source 'https://cdn.cocoapods.org/'
如果您有私人规格:
source 'https://github.com/artsy/Specs.git' - source 'https://github.com/CocoaPods/Specs.git' + source 'https://cdn.cocoapods.org/'
这样做会破坏您的 Podfile.lock,因此您可能需要运行 pod update 来查看更改(小心,这也可能会更新您的 Pod)。
如果您有 CI 设置,建议缓存新的 repo 目录,因为它非常小,可以节省更多时间。对于 1.7.2,它应该位于 ~/.cocoapods/repos/cocoapods-(是的,带有 -),但我们希望在即将发布的版本中改进命名。
更多信息:
我遇到了同样的问题,但它适用。我在 3 小时前执行了 Pod 安装命令,之后它更新了我想要的。您只需要继续跟踪“活动监视器”就可以在磁盘选项卡中看到他们的“git remote https”或“Git”。它将下载大约 330 Mb,然后显示 1 GB,几分钟后它将开始安装。无需执行额外的命令。
注意:在下载过程中,您的 MAC 需要处于连续活动模式。如果您的系统进入睡眠模式,则 CPU 会停止进程,您将收到错误,如手动添加。
上面的解决方案都不适合我,我必须卸载 coacoapods,然后安装一个特定版本,然后一切都对我有用
sudo gem uninstall cocoapods
然后
sudo gem install cocoapods -v 1.7.5
现在甚至详细显示进度
$ pod setup --verbose
Setting up CocoaPods master repo
Cloning spec repo `master` from `https://github.com/CocoaPods/Specs.git` (branch `master`)
$ /usr/bin/git clone https://github.com/CocoaPods/Specs.git --progress -- master
Cloning into 'master'...
remote: Enumerating objects: 295, done.
remote: Counting objects: 100% (295/295), done.
remote: Compressing objects: 100% (283/283), done.
Receiving objects: 20% (744493/3722462), 132.93 MiB | 567.00 KiB/s
可可豆荚 - 将等待时间减少到 10%(在 Mac OS 上):
1-pod setup
从 Mac OS 的终端输入您的项目文件夹(首先您必须在项目文件夹中)。
2-CTRL+z
在创建主目录(文件夹)后停止[你可以在你的可可豆荚文件夹位置看到它:~/.cocoapods/repos]
下载 .zip 从
https://github.com/CocoaPods/Specs
master 分支(它的 301 MB),提取它。大约需要5-10分钟
4.将内容复制到 ~/.cocoapods/repos
(现在这里您只需复制主文件夹内的内容,因此请确保已使用pod setup命令创建了主文件夹)
5-一旦你复制它(或者我应该说移动,拖放,因为复制将永远需要,因为它非常大),然后你可以做pod install --no-repo-update
6-你的 pod 文件中的 pod 现在将开始安装 这是一个截图
pod setup
工作,应该只需要 10 分钟的牢固连接。运行之后:pod install --verbose
您应该会看到在运行依赖管理器时通常会看到的所有注释。
希望有帮助