Что именно делает обновление pod repo?

Я следую интернет-учебнику по Firebase, и как часть этого я должен был выполнить некоторую работу в командной строке. Мне очень удобно с командной строкой, но я не знаком с Cocoapods. Я выполнил pod repo update но после этого понял, что я запустил его в своей папке "Документы" моего Mac вместо папки с моим проектом. Я потратил более 20 минут на выполнение, и он напечатал буквально тысячи вещей, когда он наконец завершился, некоторые из которых включали "создание" и "удаление". Я вроде как concerned- выполнил эту команду, изменил что-нибудь в моих Документах помимо проекта Firebase? И что делает pod repo update даже в этом отношении?

Ответ 1

В соответствии с документацией обновление pod repo обновляет репозитории spec, расположенные в ~/.cocoapods/repos в вашей домашней папке.

Обновляет локальный клон spec-repo NAME. Если NAME опущено, это обновит все spec-repos в ~/.cocoapods/repos.

repo - это в основном список всех доступных контейнеров и версий. Я только что столкнулся с ошибкой в наших сборках CI, потому что репо не включало спецификацию для библиотеки, которую я только что добавил. pod repo update он теперь знает об этой более новой версии и может продолжить ее установку.

Поэтому, чтобы ответить на ваш вопрос.. Запуск pod repo update в папке ваших документов ничего не сделает в этой папке. Он обновит свои спецификации спецификации pod только в папке ~/.cocoapods/repos.

Ответ 2

Основное репо Cocoapods - это не что иное, как список ВСЕХ подспецов. Подспец :

Спецификация описывает версию библиотеки Pod. Он включает в себя сведения о том, откуда следует извлечь источник, какие файлы использовать, какие параметры сборки применить, а также другие общие метаданные, такие как его имя, версия и описание.

Каталог specs - это не что иное, как список всех отдельных podspecs. Каждая версия podspec находится в каталоге тегов. В репо нет самого пакета. Репо содержит подспец. Подспец указывает местоположение репо.

spec.source = { :git => 'https://github.com/tonymillion/Reachability.git', :tag => 'v3.1.0' }

Когда вы делаете pod repo update, вы извлекаете самые последние podspecs (не фактические pod) из https://github.com/CocoaPods/Specs

Мастер репо Cocoapods:

enter image description here

список некоторых подспецов Alamofire

enter image description here

один подспец 4.7.3:

enter image description here