【问题标题】:Pod install is staying on "Setting up CocoaPods Master repo"Pod 安装停留在“设置 CocoaPods Master repo”
【发布时间】:2014-01-28 03:31:02
【问题描述】:

我正在从 git 存储库克隆一个项目,但是当我执行 pod install 时,我看到的第一行是“设置 CocoaPods 主存储库”,之后我看不到任何内容,控制台就停在那里。

我不知道发生了什么。有谁知道这里发生了什么?为什么 CocoaPods 会停在那里?

【问题讨论】:

    标签: ios objective-c git cocoapods pod-install


    【解决方案1】:

    您可以尝试在详细模式下运行:

    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'...
    

    (as suggested here)

    对我来说,上述步骤花了很长时间,因为回购(2016 年 12 月)现在是 1.1 GB

    【讨论】:

      【解决方案2】:

      我有一个我目前使用的替代解决方案。通过将 Podfile 中的存储库 URL 更改为:

      source 'https://cdn.cocoapods.org/'
      

      变化:

      - source 'https://github.com/CocoaPods/Specs.git'
      + source 'https://cdn.cocoapods.org/'
      

      【讨论】:

      • 这个解决方案有什么帮助?请
      【解决方案3】:

      以上解决方案都不适合我,我必须卸载 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   
      

      【讨论】:

        【解决方案4】:

        从 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-(是的,带有 -),但我们希望在即将发布的版本中改进命名。

        更多信息:

        【讨论】:

          【解决方案5】:

          Cocoa pods - 将等待时间减少到 10%(在 Mac OS 上):

          1- 从 Mac OS 的终端在您的项目文件夹中输入 pod setup(首先您必须在项目文件夹中)。

          2- CTRL+z 在创建主目录(文件夹)后停止[你可以在你的可可豆荚文件夹位置看到它:~/.cocoapods/repos]

          1. 从 .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 现在将开始安装 这是一个截图

          【讨论】:

            【解决方案6】:

            我尝试过的方法比克隆 repo 更快:

            1. pod setup
            2. 创建主目录后按Ctrl +C
            3. https://github.com/CocoaPods/Specsmaster下载.zip
            4. 复制内容到~/.cocoapods/repos
            5. pod install --no-repo-update 在我的项目文件夹中

            在那之后我终于可以看到正在安装的 pod

            祝你好运!

            编辑:zip 大小为 144 MB(2017 年 7 月 6 日)

            【讨论】:

              【解决方案7】:

              刚刚设置了主仓库,很高兴看到我们有下载进度,看截图;)

              CocoaPods 发布 1.2.0(1 月 28 日)修复了这个问题,感谢所有贡献者和 Danielle Tomlinson 对这个版本的贡献。


              【讨论】:

              • 300 兆是“固定的”??他们需要查看 NPM 以获得一些想法。
              • @JaredChmielecki 作为 OP,我在旧 CocoaPods 版本上遇到了同样的问题(在安装按摩期间始终保持“设置 CocoaPods Master repo”)现在我们有一个下载进度,所以我们知道一些下载是在幕后进行中;)我知道 repo 越来越大,希望我们能解决这个问题
              【解决方案8】:

              我使用了以下 4 个命令

              cd ~/.cocoapods/repos
              git clone "https://github.com/CocoaPods/Specs" master --depth 1
              cd master
              git fetch --unshallow
              pod setup
              

              我按预期花时间,但至少我不必走到屏幕前想知道背景发生了什么。

              【讨论】:

                【解决方案9】:

                pod installpod setup 在您第一次运行它时获取带有历史记录的整个 repo。你不需要那个提交历史。

                pod setup
                Ctrl +C
                cd ~/.cocoapods/repos 
                git clone --depth 1 https://github.com/CocoaPods/Specs.git master
                

                在良好的网络连接 (4Mbps) 上大约需要 2 分钟。 master 目录大约有 519M 大。

                【讨论】:

                • 太棒了,我用它来解决我在pod update 上遇到的几个奇怪问题,比如fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tree。在执行建议的命令之前,只需 rm -rf ~/.cocoapods
                • 这应该是公认的答案。还有一个注意事项,安装了新的 MBP 和 Sierra,pod repo remove master 什么也没做。我跳到下一步并继续,它工作得很好
                • 请注意,“pod 更新”仍会导致完整提取。 'pod install' 不会。信息:blog.cocoapods.org/Master-Spec-Repo-Rate-Limiting-Post-Mortem
                • 为什么cocoapods.org 没有提到这种类型的安装?不要再浪费大量的开发人员时间了!
                • 我必须以cd PROJ_DIR; pod install --no-repo-update结束
                【解决方案10】:

                这只会发生一次。

                • 主存储库有 +-1GB (2016 年 11 月)

                • 跟踪进度,您可以使用活动监控应用并查找git-remote-https

                • 下次它(pod setuppod repo update)只会快速更新~/.cocoapods/repos 中的所有规范库。

                【讨论】:

                  【解决方案11】:

                  我正在使用

                  监控下载进度
                  while true; 
                  do   
                  du -sh ~/.cocoapods/;   
                  sleep 3; 
                  done
                  

                  进度很慢……而且失败了几次。 但不知何故,在使用此命令行git config --global http.postBuffer 2M 增加了 git 缓冲区限制后,下载速度大大提高,在./cocoapods 文件夹上总共下载了 347 Mb 后,进度似乎停止了,网络活动也停止了。 但等了几分钟后,发现 cocoapod 正在验证和提取 repo,使总大小达到 853 Mb。

                  注意:我是在 2016 年 10 月 23 日做的。

                  【讨论】:

                    【解决方案12】:

                    pod setup 可以正常工作,并且只需 10 分钟即可牢固连接。运行后:pod install --verbose,您应该会看到在运行依赖管理器时通常会看到的所有 cmets。

                    希望有帮助

                    【讨论】:

                      【解决方案13】:

                      我遇到了同样的问题,但它适用。我在 3 小时前执行了 Pod 安装命令,之后它更新了我想要的。 您只需要继续跟踪“活动监视器”就可以在磁盘选项卡中看到他们的“git remote https”或“Git”。它将下载大约 330 Mb,然后显示 1 GB,几分钟后它将开始安装。无需执行额外的命令。

                      注意:在下载您的 MAC 期间,您需要持续处于活动模式。如果您的系统进入睡眠模式,那么 CPU 会停止该进程,您将收到一个错误,如手动添加。

                      【讨论】:

                        【解决方案14】:

                        上面没有对我有用,所以这是有效的:

                        pod setup
                        Ctrl +C
                        pod repo remove master
                        cd ~/.cocoapods/repos 
                        git clone https://github.com/CocoaPods/Specs master
                        

                        一旦完成,它就起作用了。

                        干杯!

                        【讨论】:

                          【解决方案15】:
                          pod setup --verbose 
                          

                          我现在正在运行上述命令,但正如@Joe Blow 所提到的,它绝对没有显示任何有关进度的信息。

                          但是,如果您在 Mac 上打开活动监视器(Windows 上的任务管理器?),在“网络”选项卡下,您将看到一个名为 'git-remote-https' 的进程,它会显示“接收字节”的大小增加。下载大约 300MB 后它停止了,然后我可以在终端窗口中看到进一步的进展。

                          【讨论】:

                          • 很好,谢谢分享。但奇怪的是 --verbose 对你不起作用......
                          • 实际上它确实在开始时打印了一些信息,但是在下载 300MB 以上的文件时需要等待很长时间......无论如何希望它有所帮助!
                          • 大小已达到 482 MB
                          【解决方案16】:

                          这些信息可能会有所帮助:

                          官方回答: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 分钟

                          【讨论】:

                          • 我要为此表扬蒂娜。这是解决这个问题的最快方法。我用过,很有效!哈哈。 2016 年 12 月 1 日发布。:)
                          • 明确一点,当你说解压文件夹时,它会不会是这样的:~/.cocoapods/repos/spec-master/...
                          • 不,你应该把它解压为 ~/.cocoapods/repos/master (只是重命名)这里推荐github.com/CocoaPods/Specs/releases
                          • 我想将提取的文件复制到 ~/.cocoapods/repos/ 目录还是复制到我的 xcode 项目的根目录?
                          • 而不是«5。移动到项目文件夹»你可以在那个地方git initgit remote add origin https://github.com/CocoaPods/Specs.git
                          【解决方案17】:

                          您必须删除 repo 并重新设置它...

                          pod repo remove master
                          pod setup
                          

                          【讨论】:

                          • 这实际上不是错误,只是缺少信息...您只需要在运行命令时添加 --verbose 即可查看发生了什么
                          【解决方案18】:

                          试试这个命令来跟踪它的工作。

                          while true; do
                            du -sh ~/.cocoapods/
                            sleep 3
                          done
                          

                          【讨论】:

                          • 或者:watch du -sh ~/.cocoapods
                          • 感谢发布。最后,我的 .cocoapods 主目录最终达到 746mb。花了大约 20 分钟,遛狗,放水壶,或者只是打个盹:-)
                          • 比 --verbose 更有用。是时候喝杯茶了!
                          【解决方案19】:

                          问题是你没有安装命令行工具,我相信。 尝试在终端中运行:

                          sudo gem update --system
                          

                          之后从Apple下载命令行工具 只需搜索“命令行工具”并为您的操作系统下载正确的版本。 安装后在终端中运行:

                          sudo gem install cocoapods
                          pod setup
                          

                          【讨论】:

                          • 嗨,我正在尝试从 Xcode 安装命令行工具,但它没有出现在那里(我有小牛)我也按照这个步骤 stackoverflow.com/questions/15371925/… 现在我可以检查我是否有命令line tools 已安装,但当我执行“pod install”或“pod setup”时“Setting up Cocoapods Master repo”仍然存在
                          • 当您在搜索框的左上角单击我的帖子中的链接时,键入:命令行工具,并且您在顶部有 Maverick OS 的版本。
                          • 感谢您的帮助,但没有奏效。我安装了命令行工具,但消息仍然出现并且不继续
                          • @Gabox 安装命令行工具后有没有调用 sudo gem install cocoa pods 和 pod setup ?
                          • 是的,我已经调用了 sudo gem install cocoapods。我按照本教程解决了问题cocoafactory.com/blog/2013/02/01/…感谢您的帮助
                          【解决方案20】:

                          当 CocoaPods 这样做时,它会将整个规范 repo 下载到 ~/.cocoapods。这可能需要一段时间,具体取决于您的连接。我会先尝试明确地使用pod setup

                          【讨论】:

                          • 嗨,我执行了 pod setup 并且消息“Setting up Cocoapods Master repo”仍然存在。需要多长时间?我已经安装了命令行工具
                          • 不应该那么长,但我会花几分钟时间
                          • 嗨,它仍然显示“设置 Cocoapods Master repo”并且永远不会继续
                          • 引用 masweb:“检查 ls -lta ~/.cocoapods/repos/master/.git/objects/pack/ 它在那里下载临时包”。
                          • 在上面的 Final Contest 的基础上,给我的痴迷者的提示:运行 brew install watch 然后运行 ​​watch ls -lta ~/.cocoapods/repos/master/.git/objects/pack/ 以监控进度。
                          猜你喜欢
                          • 1970-01-01
                          • 2016-04-03
                          • 1970-01-01
                          • 1970-01-01
                          • 1970-01-01
                          • 1970-01-01
                          • 2020-01-17
                          • 1970-01-01
                          • 1970-01-01
                          相关资源
                          最近更新 更多