cocoapods - 'instal pod' membutuhkan waktu lama

276

Saya mencoba untuk memperbarui pod yang ada dengan pod installperintah, tetapi perlu selamanya untuk dijalankan.

Mode verbose menunjukkan itu macet di baris berikut (selamanya)

Memperbarui spec repo master

$ / usr / bin / git pull --no-rebase --no-commit

Tidak ada aktivitas jaringan setelah macet.

Hai Feng Kao
sumber
14
setelah macet selama 90 menit, pod installlanjutkan ke tahap berikutnya. Saya kira saya tidak terlalu sabar.
Hai Feng Kao
10
jalankan pod install --verbose untuk melihat informasi debug lainnya. Situasi umum adalah pembaruan git memakan waktu terlalu lama. Jika Anda tidak memerlukan pembaruan, jalankan instal pod --no-repo-update
Wellbin Huang
2
Mengatakan sesuatu tentang kualitas pod. Orang-orang itu perlu memperbaikinya segera. Saya terjebak pada ini setiap kali saya harus berurusan dengan pod.
Jonny
1
@ HaiFengKao, saya khawatir karena internet saya tidak bagus. Saya melacaknya, sekitar 350MB sedang diunduh. Terima kasih untuk tautannya, saya pikir cocoapod perlu server sendiri.
GeneCode
2
Masih sama lambatnya 5 tahun. 20rb per detik untuk file besar. Konyol.
Hasen

Jawaban:

552

Saya mengalami masalah yang sama, dan saya menyelesaikannya dengan menjalankan perintah berikut yang diberikan di sini

pod repo remove master
pod setup
pod install
lmnbeyond
sumber
64
cocoapods - 'pod repo remove master' berlangsung selamanya. Perlu membuat utas baru? :)
dmitrynikolaev
6
Terima kasih, ini bekerja untuk saya. Dan Anda juga dapat menambahkan --verbose untuk menampilkan detail informasi debug
sinyal
2
@dmitrynikolaev pada awalnya saya pikir menghapus master pod repo juga membutuhkan waktu lama. Tetapi ternyata saya hanya perlu beberapa menit lagi untuk menunggu. Waktu yang Anda perlukan mungkin bervariasi karena saya tidak tahu konfigurasi pod Anda, tetapi berikan saja lebih banyak waktu.
Chen Li Yong
22
Alangkah baiknya menambahkan penjelasan pada solusi yang diberikan untuk membuatnya jelas.
DevGansta
4
Bahkan pengaturan pod terhenti saat mengikuti, $ / usr / bin / git clone github.com/CocoaPods/Specs.git master Mengkloning ke 'master' ... Anda dapat melewati pengaturan pod sebagai gantinya "Pergi ke ~ / .cocoapods / repos dan jalankan 'git clone github.com/CocoaPods/Specs.git master'
Ammar Mujeeb
158

kamu bisa lari

pod install --verbose 

untuk melihat apa yang terjadi di balik layar .. setidaknya Anda akan tahu di mana ia terjebak (itu bisa menjadi operasi git clone yang terlalu lama karena jaringan Anda yang lambat dll)

untuk memiliki ide yang lebih baik tentang mengapa tampaknya macet (menjalankan verbose dapat membuat Anda mendapatkan sesuatu seperti ini

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

adalah untuk mengetahui ukuran repo git yang Anda kloning .. jika Anda kloning dari github .. Anda dapat menggunakan format ini :

/repos/:user/:repo

jadi, misalnya, untuk mencari tahu tentang jenis repo di atas

https://api.github.com/repos/typhoon-framework/Typhoon

dan JSON yang dikembalikan akan memiliki kunci ukuran, nilai. jadi yang di atas dikembalikan

"size": 94014,

yaitu sekitar 90mb. tidak heran butuh selamanya! (btw .. saat aku menulis ini .. baru saja selesai .. ha!)


perbarui: satu hal umum yang dilakukan pod kakao sebelum bahkan mulai mengunduh dependensi yang tercantum di podfile Anda, adalah mengunduh / memperbarui repo sendiri (mereka menyebutnya Menyiapkan repo Master Cocoapods .. lihat ini:

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

berita buruknya adalah jika Anda mengikuti prosedur di atas untuk mengetahui seberapa besar repo kakao itu .. Anda akan mendapatkan ini : "size": 614373, .. yang banyak .

jadi untuk mendapatkan cara yang lebih akurat untuk mengetahui berapa lama waktu yang diperlukan untuk hanya menginstal repo Anda sendiri .. Anda dapat mengatur master repo pod kakao secara terpisah dengan menggunakan 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.

lalu berlari pod install

abbood
sumber
15
Ini adalah satu - satunya deskripsi yang koheren tentang " WTF " cocoapods "hingga" ... yang pernah saya lihat.
Alex Grey
2
pengunduhan master repo memerlukan waktu 20 menit, menatap hanya pada kursor yang berkedip-kedip (dan saya hanya memiliki koneksi internet 150MB dan hanya macbook pro retina i7 yang buruk)
woens
Ada 17.000+ file / direktori dalam direktori spesifikasi. Itu bukan pendekatan yang paling ramah git untuk apa pun yang mereka lakukan di sana.
Erik Reppen
Ketika saya menjalankan perintah ini, cocoapod saya menunjukkan kepada saya bahwa itu sudah selesai. dengan instalasinya. Terima kasih!
Jameela Huq
Sebagian besar waktu adalah tentang ketergantungan besar yang membutuhkan banyak waktu untuk mengunduh
OhadM
29

Solusi yang memungkinkan:

  1. Memperbarui Cocoa Pods dapat mengatasi masalah ini
  2. Bersihkan dan pasang lagi pod baru

Memperbarui CocoaPods

Terminal terbuka dan ketik:

$ sudo gem update cocoapods

Pasang kembali Pods

Langkah 1

Hapus semua pod dari proyek Anda ( bagian rumit ):

Secara manual

  1. Hapus semua catatan Pods di Fase Pembuatan proyek Anda (Ditandai Merah)

masukkan deskripsi gambar di sini

  1. Hapus libPods.a di bawah folder Frameworks

masukkan deskripsi gambar di sini

  1. Sekarang pergilah ke direktori proyek dan hapus Podfile.lock *, ** folder Pods dan Workspace (Hapus dari Sampah juga).

Secara otomatis menggunakan CocoaPods De-Integrate

Install

$ [sudo] gem install cocoapods-deintegrate

Lari

$ pod deintegrate

Langkah 2

Di sini kita akan melalui menginstal lagi Pods

Ubah lokasi Anda menjadi direktori Anda

$ cd yourprojectdirectory

Edit podfile dengan menambahkan baris yang Anda butuhkan

$ open -a Xcode podfile 

atau

$ nano podfile

AKHIRNYA menginstal pod lagi

$ pod install

Semoga ini membantu

E-Riddie
sumber
tak berguna. Baru saja melakukan instalasi baru cocoapod, pod init dan pod install hanya hang untuk selamanya
woens
@woens Yah itu tergantung pada perpustakaan apa yang Anda ambil. Anda juga dapat mencoba alat ini yang menghilangkan integrasi pod dari proyek, dan kemudian menjalankan instal lagi
E-Riddie
tidak ada! itulah intinya. ini terjadi ketika Anda mulai dengan init, lalu instal pada proyek kosong.
perempuan
@ dua belas Apa yang Anda maksud dengan tidak ada? Di mana titik untuk menginstal pod ketika tidak ada pod sama sekali (jika saya mengerti Anda dengan benar)?
E-Riddie
baru saja memulai proyek kosong dan mempersiapkannya untuk menambahkan sesuatu nanti. jadi: buat proyek xcode, jalankan pod init, jalankan install pod. Saat ini pod install hang.
wanita
19

Saya menemukan cara lain untuk menyelesaikan masalah

pod install --verbose --no-repo-update

ini bekerja untuk saya.

wossoneri
sumber
Masih harus mengkloning pertama kali.
Erik Reppen
14

Pada 15 Agustus 2016, repo adalah file besar 2,39 GB. Saya membuka Monitor Aktivitas untuk melihat apa yang dilakukan terminal. Itu mengunduh file besar ini.

209135
sumber
13

Seperti yang ditunjukkan di sini proses git-remote-http berjalan di latar belakang . Saya menerima proses ini dari Activity Monitor dan berhenti dari proses ini melanjutkan proses pod yang macet pada " Memperbarui repositori spesifikasi lokal " setelah POD INSTALL

Ammar Mujeeb
sumber
13

Jawaban yang diperbarui untuk 2019 - tim kakao bergerak menggunakan CDN mereka sendiri yang memecahkan masalah ini, yang disebabkan oleh pembatasan tingkat GitHub, seperti dijelaskan di sini: https://blog.cocoapods.org/CocoaPods-1.7.2/

TL; DR Anda perlu mengubah baris sumber Anda Podfileke ini:

source 'https://cdn.cocoapods.org/'
Syonip
sumber
Ini adalah jawaban yang benar, mengumumkan 2019. Jika hanya jawaban yang diterima dapat diubah ...
Ian Kemp
9

Inilah yang bekerja untuk saya:

  1. Hapus semua konten di bawah ~/.CocoaPods
  2. Hapus folder Podfile.lockdan yang ada Pods.
  3. Biarkan PodFile Anda utuh.
  4. Lari sudo gem install cocoapods --verbose
  5. Lari pod install --verbose

Saya sarankan menggunakan flag --verbose karena Terminal tidak bagus ketika memberikan kemajuan pada tindakan perintah. Opsi verbose sangat membantu!

ArdenDev
sumber
5
Berhati-hatilah karena master repo di ~ / .cocoapods sangat besar (~ 1GB), jadi menghapus dan menginstal ulang membutuhkan waktu lama. Jika saya menyadari hal ini, saya akan mencoba pod install --verbosesebelum terpaksa menghapus master repo.
BinaryNate
7

Cukup ikuti langkah-langkah di bawah ini:

Unduh https://github.com/CocoaPods/Specs/archive/master.zip

Jalankan perintah di bawah ini di terminal:

pod setup --verbose

Buka tab baru di terminal dan LARI

mv ~/.cocoapods/repos/master/.git ~/tempSpecsGitFolder

buka master.zip (buka ritsletingnya)

mv Specs-master ~/.cocoapods/repos/master

mv ~/tempSpecsGitFolder ~/.cocoapods/repos/master/.git

cd [folder proyek]

instal --no-repo-perbarui

Harshal Wani
sumber
6

Coba bersihkan cache CocoaPod Anda, unduh ulang dan instal ulang semua pod seperti dijelaskan di sini

rm -rf "${HOME}/Library/Caches/CocoaPods"

rm -rf "\`pwd\`/Pods/"

pod update
Arun Prasad
sumber
4

Seperti disebutkan dalam jawaban lain, Dibutuhkan selamanya karena ukuran master repo cocoapod sangat besar. Waktu ini dapat dikurangi menggunakan langkah-langkah berikut.

1) Buat jalur file spesifikasi pribadi pada repositori github Anda. Berikan jalur ini https://github.com/yourpathForspecs.git 'sebagai sumber di podfile Anda.

2) mengidentifikasi SEMUA repositori yang Anda butuhkan dan dependensinya (disebutkan dalam file podspec.json pada cocoapods untuk repositori ini) dan dapatkan file podspec.json mereka dari cocoapods. tambahkan file podspec.json ini dengan foldernya (katakanlah folder versi terbaru untuk baut) dalam repositori spesifikasi ini.

3) hapus sumber ' https://github.com/CocoaPods/Specs.git ' di podfile

4) pembaruan pod

Ini akan memakan waktu jauh lebih sedikit karena ini membutuhkan pengambilan dan pengunduhan hanya pod yang Anda butuhkan daripada repositori cocoapods keseluruhan. Dalam kasus saya, ini mengurangi waktu pembaruan pod dari 15-20 menit rata-rata menjadi 3-4 menit paling banyak.

shashank
sumber
1

Langkah Instalasi Pod

Terminal Terbuka Pertama:

chmod o-w /usr/local

sudo chmod o-w /usr/local

sudo gem install cocoapods

jika sudah menginstal pod di sistem Anda, ikuti langkah-langkah di bawah ini

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
Bhavin Chauhan
sumber
1

Saya mempunyai masalah yang sama, saya kemudian menyadari bahwa saya masih menjalankan Network Conditioner pada "Very Bad Network". Mematikan itu memecahkan masalah.

Semoga itu bisa membantu seseorang.

Eljoe
sumber
1

Saya memperbaiki masalah ini seperti itu:

rm -fr ~/Library/Caches/CocoaPods && \
gem update --system && \
gem update && \
gem cleanup && \
pod setup

Referensi: http://blog.cocoapods.org/Repairing-Our-Broken-Specs-Repository/

selahattinunlu
sumber
1
Saya pod setupmengambil selamanya dan saya dibatalkan setelah 30 menit. Saya hanya mengikuti prosedur ini dan git clonesekarang selesai setelah sekitar 5 menit.
neoneye
1

Saya memiliki masalah yang sama. Setelah berlari

pod install
Setting up CocoaPods master repo

Iterm2 macet saat mengatur CocoaPods.

Saya memecahkan masalah dengan menjalankan

sudo gem install CocoaPods

Ini disebutkan di situs web CocoaPods

Akarsh SEGGEMU
sumber
0

Kadang-kadang terjadi pada saya juga dan saya hanya:

pod clean
pod update --verbose
Luca Davanzo
sumber
0

Solusi untuk saya di 11.2019

Halo saya mencoba banyak hal, tetapi tidak ada yang berhasil. Coba sambungkan saja ke situs ini https://cdn.cocoapods.org/ jika Anda tidak bisa, cukup gunakan VPN dan lakukan pod installdll. Dan jangan lupa gunakan --verboseuntuk memahami apa yang terjadi.

Viktor
sumber