Под установкой остается «Настройка репо CocoaPods Master»


238

Я клонирую проект из репозитория git, но когда я выполняю pod installпервую строку, я вижу «Настройка основного репозитория CocoaPods», и после этого я больше ничего не вижу, консоль останавливается на этом.

Я не знаю, что происходит. Кто-нибудь знает, что здесь происходит? Почему CocoaPods останавливается там?

Ответы:


273

Вы можете попробовать запустить в подробном режиме:

pod install --verbose

Это покажет вам, что такое cocoapods:

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 г.) теперь составляет 1,1 ГБ.


186

pod installили pod setupполучает весь репо с историей, когда вы запускаете его в первый раз. Тебе не нужна история коммитов.

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

Приличное сетевое соединение (4 Мбит / с) занимает около 2 минут. masterкаталог около 519M большой.


3
Круто, я использовал это, чтобы исправить несколько странных проблем, с которыми я pod updateстолкнулся fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tree. Просто пришлось rm -rf ~/.cocoapodsдо выполнения предложенных команд.
Гоб

1
Это должен быть принятый ответ. Также одна заметка, со свежим MBP и установленной Sierra, pod repo remove masterничего не сделала. Я перешел к следующему шагу и продолжил, и это сработало отлично
Зак Шапиро

4
Пожалуйста, обратите внимание, что «обновление pod» по-прежнему будет вызывать полную загрузку. 'pod install' не будет. Информация: blog.cocoapods.org/Master-Spec-Repo-Rate-Limiting-Post-Mortem
Вайден

1
Почему cocoapods.org не упоминает этот тип установки? Хватит тратить кучу часов разработчиков!
Алессио Даль Бьянко

2
Я должен был закончить сcd PROJ_DIR; pod install --no-repo-update
mstrthealias

50

Попробуйте эту команду, чтобы отслеживать ее работу.

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

7
в качестве альтернативы:watch du -sh ~/.cocoapods
Maxhawkins

Спасибо за публикацию этого. В конце концов мой главный каталог .cocoapods оказался на 746mb. Потребовалось около 20 минут, выгуливать собаку, ставить чайник или просто вздремнуть :-)
Джон Гриффитс

Гораздо полезнее, чем просто - verbose. Время для чашки чая!
далеко от дома

45

Проблема в том, что у вас не установлены инструменты командной строки, я считаю. Попробуйте запустить в терминале:

sudo gem update --system

После этого загрузите инструменты командной строки от Apple, просто найдите «Инструменты командной строки» и загрузите нужную версию для вашей ОС. После установки запустите в терминале:

sudo gem install cocoapods
pod setup

Привет, я пытаюсь установить инструменты командной строки из XCode, но он там не отображается (у меня есть mavericks). Я также следую этим шагам stackoverflow.com/questions/15371925/… и теперь я могу проверить, что у меня есть инструменты командной строки установлен, но «Настройка основного репозитория Cocoapods» все еще там, когда я выполняю «установку pod» или «настройку pod»
Габриэль Гонсалвес

Когда вы нажимаете на ссылку из моего поста в левом верхнем углу в поле поиска, введите: инструменты командной строки и у вас есть версия для Maverick OS вверху.
Грег

2
Спасибо за вашу помощь, но это не сработало. У меня установлены инструменты командной строки, и сообщение все еще появляется и не идет вперед
Габриэль Гонсалвес

@Gabox Вы называете sudo gem установить какао-бобы и их настройку после установки инструментов командной строки?
Грег

1
Да, я назвал sudo gem установить cocoapods. Я решил проблему, следуя этому уроку cocoafactory.com/blog/2013/02/01/… Спасибо за вашу помощь
Габриэль Гонсалвес

21

Может быть эта информация будет полезна:

Официальный ответ: 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 минут


Я должен поблагодарить Тину за это. Это самый быстрый способ решить эту проблему. Я использовал это, и это эффективно! ржунимагу. Опубликовано 1 декабря 2016 г. :)
Гленн

Просто для ясности, когда вы сказали распаковать папку, она будет выглядеть примерно так: ~ / .cocoapods / repos / spec-master / ...
A-Majeed

нет, вы должны разархивировать его как ~ / .cocoapods / repos / master (просто переименовать), как это рекомендовано здесь github.com/CocoaPods/Specs/releases
Тина Ж

Предполагается ли скопировать извлеченные файлы в каталог ~ / .cocoapods / repos / ИЛИ Копировать в корневой каталог моего проекта xcode?
Анирудха Махале

Вы должны распаковать файлы в ~ / .cocoapods / repos / master напрямую. После этого: вызвать «pod install --no-repo-update» в папке проекта
Тина Ж

16

Когда CocoaPods делает это, он загружает все спецификации репозитория в ~/.cocoapods. Это может занять некоторое время в зависимости от вашего соединения. Я бы попробовал сделать это явно сначала сpod setup


Привет, я выполняю настройку pod, и сообщение «Настройка основного репозитория Cocoapods» все еще там. Сколько времени это может занять? У меня установлены инструменты командной строки
Габриэль Гонсалвес

1
Не должно быть так долго, но я бы уделил этому несколько минут
Кит Смайли

1
Привет, он все еще показывает «настройку репо Cocoapods Master» и никогда не идет вперед
Габриэль Гонсалвес

6
Цитирую masweb: "проверьте ls -lta ~ / .cocoapods / repos / master / .git / objects / pack / загрузку там временного пакета".
lpapp

2
Совет для моих коллег одержимых, опираясь на Заключительный конкурс выше: запустить brew install watchзатем watch ls -lta ~/.cocoapods/repos/master/.git/objects/pack/в ходе мониторинга.
cduhn

8

Ничто из вышеперечисленного не сработало для меня, вот что сработало:

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

После завершения это сработало.

Ура!


8

Что я попробовал и быстрее, чем клонирование репо:

  1. pod setup
  2. Ctrl + C после создания главного каталога
  3. Загрузите ZIP-файл с https://github.com/CocoaPods/Specs master.
  4. Скопируйте содержимое в ~/.cocoapods/repos
  5. pod install --no-repo-update в папке моего проекта

После этого я наконец-то смог увидеть установленные стручки

Удачи!

РЕДАКТИРОВАТЬ: размер почтового индекса составляет 144 МБ (6 июля 2017 г.)


6
pod setup --verbose 

Я запускаю вышеупомянутую команду прямо сейчас, но, как упомянул @Joe Blow, она не показывает абсолютно никакой информации о прогрессе.

Но если вы откроете Activity Monitor на Mac (диспетчер задач в Windows?), На вкладке «Сеть» вы увидите процесс с именем «git-remote-https», и он показывает, что размер «принятых байтов» увеличивается. После загрузки около 300 МБ он остановился, и тогда я увидел дальнейший прогресс в окне терминала.


хорошо, спасибо, что поделились этим. но странно, что --verbose не работает для вас ...
Габриэль Гонсалвес

на самом деле он печатает некоторую информацию в начале, но затем при загрузке этого файла объемом более 300 МБ затрачивается много времени ... в любом случае, надеюсь, это помогло!
Ахсас Шарма

размер
увеличился

6

Я использовал следующие 4 команды

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

Я взял время, как и ожидалось, но, по крайней мере, мне не нужно было подниматься по экрану, задаваясь вопросом, что происходит на заднем плане.


5

Это происходит только один раз.

  • Мастер репо имеет + -1 ГБ (ноябрь 2016 года) .

  • Для отслеживания прогресса вы можете использовать приложение Activity Monitor и искать git-remote-https.

  • В следующий раз он ( pod setupили pod repo update) только быстро обновит все спец-репозитории в ~/.cocoapods/repos.


4

Вам придется удалить репо и заново его настроить ...

pod repo remove master
pod setup

на самом деле это не ошибка, просто отсутствие информации ... вам нужно всего лишь добавить --verbose при запуске команды, чтобы проверить, что происходит
Габриэль Гонсалвес

4

Я отслеживаю процесс загрузки с помощью

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

прогресс очень медленный ... и потерпел неудачу несколько раз. Но каким-то образом после увеличения лимита буфера git с помощью этой командной строки git config --global http.postBuffer 2Mскорость загрузки значительно улучшается, и после загрузки всего 347 МБ в ./cocoapodsпапку, кажется, прогресс останавливается и сетевая активность также останавливается. но, подождав несколько минут, выясните, что cocoapod проверяет и извлекает репозиторий и составляет общий размер до 853 Мб.

примечания: я делаю это 23 октября 2016 года.


1

Я столкнулся с той же проблемой, но это работает для. Я выполнил команду установки Pod раньше, чем 3 часа назад, после чего он обновил то, что я хочу. Вам просто нужно следить за «Activity Monitor». Вы можете увидеть их «git remote https» или «Git» на вкладке диска. Он загрузит около 330 МБ, затем отобразит 1 ГБ и через несколько минут начнет установку. Нет необходимости выполнять дополнительные команды.

Примечание: во время загрузки вашего MAC необходимо постоянно находиться в активном режиме. Если ваша система переходит в спящий режим, то процессор останавливает процесс, и вы получаете сообщение «Добавить» вручную.


1

Начиная с cocoapods 1.7.2 вы можете использовать cdn вместо github. Он пылает быстро и не будет висеть. :) По умолчанию cdn используется с Cocopods 1.8.0.

Чтобы использовать источник CDN в вашем Podfile:

Если у вас нет личных характеристик:

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, чтобы увидеть изменения (будьте осторожны, это также может обновить ваши Pod).

Если у вас есть настройка CI, рекомендуется кэшировать новый каталог репо, так как он очень маленький и сэкономит еще больше времени. В версии 1.7.2 он должен находиться в ~ / .cocoapods / repos / cocoapods- (да, с -), но мы надеемся улучшить именование в следующем выпуске.

Больше информации:


1

Ни одно из приведенных выше решений не помогло мне, мне пришлось удалить 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   

0

Просто установите мастер репо, был рад видеть, что у нас есть прогресс загрузки, см. Скриншот;)

Релиз CocoaPods 1.2.0(28 января) исправляет эту проблему, спасибо всем участникам и Даниэль Томлинсон за этот выпуск.


введите описание изображения здесь


300 мег это "исправлено" ?? Им нужно взглянуть на NPM для некоторых идей.
Джаред

@JaredChmielecki как OP, у меня была та же проблема со старой версией CocoaPods (во время установки всегда остается «Настройка основного репозитория CocoaPods»), теперь у нас есть процесс загрузки, так что мы понимаем, что некоторая загрузка идет за кулисами;) Я знаю, что репо становится огромным, надеюсь, мы исправим это
AamirR

0

Какао - уменьшить время ожидания до 10% (в Mac OS):

1 - введите pod setupв папку вашего проекта (сначала вы должны быть в папке проекта) из терминала в Mac OS.

2 CTRL+z- остановить после того, как он создаст главный каталог (папку) [вы можете увидеть его в папке с вашими какао-бобами: ~ / .cocoapods / repos]

  1. Скачать .zip с 

    https://github.com/CocoaPods/Specs

     ветка master (ее 301 мб), распакуйте ее. Это займет около 5-10 минут

4. Скопируйте содержимое в  ~/.cocoapods/repos(теперь здесь вам нужно только скопировать содержимое в главной папке, поэтому убедитесь, что главная папка уже создана с помощью команды pod setup)

5 - как только вы скопируете его (или я должен сказать, перемещайте, перетаскивайте, поскольку копирование будет длиться вечно, так как оно очень большое), вы можете затем сделать pod install --no-repo-update 6 - ваши стручки в файле стада теперь начнут устанавливаться Вот скриншот введите описание изображения здесь


0

У меня есть альтернативное решение, которое я сейчас использую. Изменяя URL хранилища в Podfile на:

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

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

-1

pod setupработает и должно занять всего 10 минут на прочном соединении. После этого запустите: pod install --verboseи вы должны увидеть все комментарии, которые вы обычно видите при запуске менеджера зависимостей.

надеюсь, это поможет

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.