कोकोपोड्स: कोकोआपोड्स / स्पेक्स स्पेक्स को अपडेट करने के लिए गिटहब से जुड़ने में विफल


136

जब चल pod repo updateनिम्न त्रुटि उत्पन्न होता है:

Updating spec repo `master`
[!] Failed to connect to GitHub to update the CocoaPods/Specs specs repo - Please check if you are offline, or that GitHub is down


कोकोपोड्स 1.0.1 का उपयोग करना

मैं इस बारे में भी अवगत हूं: पोस्ट-मॉर्टम को सीमित करने वाले मास्टर स्पेक-रेपो रेट


कॉल में -verbose ध्वज जोड़ना रूबी कॉल स्टैक दिखाता है:

.rvm/gems/ruby-2.3.0/gems/cocoapods-core-1.0.1/lib/cocoapods-core/github.rb:100:in `modified_since_commit'
.rvm/gems/ruby-2.3.0/gems/cocoapods-core-1.0.1/lib/cocoapods-core/master_source.rb:32:in `requires_update?'
.rvm/gems/ruby-2.3.0/gems/cocoapods-core-1.0.1/lib/cocoapods-core/master_source.rb:14:in `update'
.rvm/gems/ruby-2.3.0/gems/cocoapods-1.0.1/lib/cocoapods/sources_manager.rb:88:in `block (2 levels) in update'
.rvm/gems/ruby-2.3.0/gems/cocoapods-1.0.1/lib/cocoapods/user_interface.rb:63:in `section'
.rvm/gems/ruby-2.3.0/gems/cocoapods-1.0.1/lib/cocoapods/sources_manager.rb:87:in `block in update'
.rvm/gems/ruby-2.3.0/gems/cocoapods-1.0.1/lib/cocoapods/sources_manager.rb:86:in `each'
.rvm/gems/ruby-2.3.0/gems/cocoapods-1.0.1/lib/cocoapods/sources_manager.rb:86:in `update'
.rvm/gems/ruby-2.3.0/gems/cocoapods-1.0.1/lib/cocoapods/command/repo/update.rb:23:in `run'
.rvm/gems/ruby-2.3.0/gems/claide-1.0.0/lib/claide/command.rb:334:in `run'
.rvm/gems/ruby-2.3.0/gems/cocoapods-1.0.1/lib/cocoapods/command.rb:50:in `run'
.rvm/gems/ruby-2.3.0/gems/cocoapods-1.0.1/bin/pod:55:in `<top (required)>'
.rvm/gems/ruby-2.3.0/bin/pod:23:in `load'
.rvm/gems/ruby-2.3.0/bin/pod:23:in `<main>'
.rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `eval'
.rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `<main>'


इसे हल करने का कोई तरीका नहीं खोज सकते और परियोजना को नहीं चला सकते।


1
का संदर्भ लें github.com/CocoaPods/CocoaPods/issues/... , यह पुराने रूबी संस्करण से संबंधित है
vikramvi

जवाबों:


415

एक प्रमुख मुद्दा 2018 फरवरी के बाद "कमजोर क्रिप्टोग्राफिक मानकों को हटा दिया गया" है।

यहाँ एक नोट: https://github.com/blog/2507-weak-cryptographic-standards-removed

इसे हल करने के लिए, पहले आपको ओपनसेल को अपडेट करने की आवश्यकता है, फिर रूबी, फिर कोकोपॉड।

$ which openssl
/usr/bin/openssl

$ openssl version
OpenSSL 0.9.8zh 14 Jan 2016

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

$ brew update

$ brew install openssl

$ brew upgrade openssl

`` If you need to have this software first in your PATH run: echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile

$ echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile
$ source ~/.bash_profile

$ which openssl
/usr/local/opt/openssl/bin/openssl

$ openssl version
OpenSSL 1.0.2n  7 Dec 2017

$ brew install rbenv ruby-build

$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.bash_profile
$ source ~/.bash_profile

$ rbenv install --list

Available versions:
  1.8.5-p52
  1.8.5-p113
  1.8.5-p114
  1.8.5-p115
  1.8.5-p231
  1.8.6
:
  2.5.0-rc1
  2.5.0
  2.5.1
  2.6.0-dev
:

$ rbenv install 2.5.1

$ rbenv versions
* system (set by /Users/username/.rbenv/version)
  2.5.1

$ ruby --version
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]

$ rbenv global 2.5.1

$ rbenv versions
  system
* 2.5.1 (set by /Users/username/.rbenv/version)

$ ruby --version
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin16]

$ gem install cocoapods -n /usr/local/bin

$ which pod
/usr/local/bin/pod

$ pod --version
1.5.3

अब, आप कर सकते हैं

$ pod update

स्रोत लिंक: https://qiita.com/satoshi-iwaki/items/ed2c267127dcc80baa21


2
यह होना चाहिए export PATH="$HOME/.rbenv/shims:$PATH"और नहींexport PATH="$HOME/.rbenv/bin:$PATH"
kambala

2
क्या कारण है कि आप माणिक के 2.1.0 संस्करण को क्यों स्थापित कर रहे हैं? नवीनतम क्यों नहीं?
derickito

1
मैंने कीस्ट्रोके को इस सलाह का पालन किया, साथ ही इस धागे में हर दूसरे सुझाए गए उत्तर के साथ ... कोई फायदा नहीं हुआ। मैंने कई बार कोकोपोड्स रेपो को उड़ा दिया है। किसी भी लंबे शॉट्स या पागल विचारों वहाँ?
निक शेंबल

3
आपको इस वजह से एक नए रूबी संस्करण का उपयोग करना चाहिए: "चेतावनी: रूबी-2.1.0 अपने जीवन का अंत है और अब असमर्थित है। यह अब बग फिक्स या महत्वपूर्ण सुरक्षा अपडेट प्राप्त नहीं करता है।"
जॉम्फर

5
इसके अलावा rm -rf ~ / .cocoapods / पॉड रेपो अपडेट चलाने से पहले करना था
rustycode

136

अंत में इसे हटाने ./cocoapods/repos/masterऔर चलाने के द्वारा हल करने में कामयाब रहे pod install

अधिक औपचारिक समाधान शायद इस तरह होगा:

pod repo remove master
pod setup
pod install

यदि pod installपहले दो चरणों को पूरा करने के बाद विफल रहता है, तो आपको अपने को हटाने की आवश्यकता हो सकती है Podfile.lock

क्यों यह शुरू में जीथब से जुड़ने में असफल रहा, यह मेरे से परे है।


5
Ssh कीज़ बदलने के बाद मेरे साथ हुआ। संभावित कारणों में से एक के रूप में।
स्क्वाच करें

1
मैंने सभी 3 चरण किए, लेकिन फिर भी यह दिखाता है [!] कोकोआपोड्स / स्पेक्स स्पेक्स रेपो को अपडेट करने के लिए गिटहब से कनेक्ट करने में विफल रहा - कृपया जांचें कि क्या आप ऑफ़लाइन हैं, या कि गिटहब नीचे है
अंकुश कुमार गुप्ता

"Podfile.lock" फ़ाइल को हटाना और फिर "पॉड इंस्टॉल" निष्पादित करना मेरे लिए काम कर गया! धन्यवाद
प्रोग्रामर

51

आप यह कोशिश कर सकते हैं:

$sudo rm -fr ~/.cocoapods/repos/master
$pod setup
$pod install

लेकिन मेरे मामले में मुझे:

  • Podfile.lock को हटाएं और फिर

  • $pod install


43

एक दूसरे के लिए समान समाधान मैक्स की और आडेम के इस थ्रेड के कोई में पाया जाता है CocoaPods मुद्दा :

brew install ruby
sudo gem install cocoapods

सत्यापित करें कि आप नवीनतम और सही रूबी का उपयोग कर रहे हैं:

ruby --version
which ruby

का उपयोग करना चाहिए /usr/local/bin/ruby

कारण: यह पता चला है कि गितुब 22 फरवरी को केवल टीएलएस 1.2 का समर्थन करने के लिए अद्यतन किया गया था। उच्च सिएरा आने से पहले मैकओएस के पुराने संस्करण रूबी 2.0 के साथ पूर्वस्थापित थे। यह संस्करण ओपनएसएसएल 0.9.8 का उपयोग करता है जो "केवल टीएलएस 1.2 का समर्थन करने वाले सर्वर के साथ विफल हो जाएगा।"

नवीनतम रूबी (2.5) और नवीनतम कोकोआपोड्स (1.4) को अपडेट करना मेरे लिए ओपनस्एल (रूबी अपडेट्स ओपनएसएल) के साथ कुछ भी किए बिना इसे निर्धारित करता है। अगर आप अभी तक हाई सिएरा को अपडेट नहीं करना चाहते हैं तो यह एक अच्छा उपाय है।


2
किसी भी अन्य समाधान ने काम नहीं किया, यह किया। नवीनतम रूबी और नवीनतम कोकोआपोड्स के लिए अद्यतन। धन्यवाद।
सैम बिंग

1
यह मेरे लिए ठीक नहीं किया, लेकिन मैं पृष्ठभूमि स्पष्टीकरण के लिए मतदान किया।
xdeleon

एक पॉडसेक को आगे बढ़ाने पर मुझे यह समस्या हुई। यह वास्तव में मदद करता है!
R0CKSTAR

महत्वपूर्ण विवरण: मेरे पास कोकोआ पेय के माध्यम से स्थापित किया गया था। उस मामले में रूबी और ओपनएसएल को अपग्रेड करना पर्याप्त नहीं था। मुझे CocoaPods को अनइंस्टॉल करना था और फिर gemइस उत्तर में दिखाए अनुसार इसे फिर से स्थापित करना था ।
एरिक डोर्नेनबर्ग

22

मुझे भी इसी मुद्दे का सामना करना पड़ा। मेरे दृश्य में, मैंने गीथूब पर कोकोकोप्स स्पेक्स के मिरर रेपो (अन्यत्र होस्ट किए गए) का उपयोग किया। जब मैंने स्पेक्स रेपो को अपडेट किया, तो यह काम कर गया!

cd ~/.cocoapods/repos/master
git pull

2
मैं ऑफ़लाइन / github नीचे त्रुटि बात के रूप में अच्छी तरह से हो रही थी और यह काम किया है। मुझे पॉड्स की स्थापना रद्द करने में थोड़ी झिझक थी।
एथन पार्कर

इस जवाब ने वास्तव में मेरे लिए काम किया। मैंने 2 घंटे से अधिक समय बिताया। बहुत बहुत धन्यवाद।
हिरेन पटेल

यह उत्तर वास्तव में फ़ोल्डर को हटाने के बजाय हैक के बजाय एक समाधान के साथ कारण को संबोधित करता है जो एक गिट क्लोन को बाध्य करता है।
NoodleOfDeath

14

इसने जादू की तरह काम किया

$sudo rm -fr ~/.cocoapods/repos/master
$pod setup
$pod install

अन्यथा

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


7

बस कोकोपोड अपडेट करें: sudo gem install cocoapods


7

एडेम का थोड़ा सा सरल समाधान, जो रेंबव का उपयोग नहीं करता है:

brew install openssl
brew upgrade openssl
brew install ruby
brew link --overwrite ruby

अंत में, सुनिश्चित करें कि आपके पास अपने PATHचर सेट के /usr/local/bin बाद नहीं है $PATH । आपका PATHनिर्यात ~/.bash_profileइस तरह दिखना चाहिए:

export PATH=/usr/local/bin:$PATH

1
मेरे लिए भी यही काफी था। ध्यान दें कि आपको अभी भी कोकोपीड्स को फिर से स्थापित करने की आवश्यकता है gem install cocoapodsक्योंकि प्रत्येक माणिक का अपना रत्न स्थान है। BTW, वहाँ brew install opensslकदम चलाने की कोई जरूरत नहीं है क्योंकि यह वैसे भी माणिक की निर्भरता है।
सगी इल्तूस

यह वास्तव में मेरी मदद की, धन्यवाद! हालाँकि मुझे ~ / .bash_profile फ़ाइल को बदलने के बाद टर्मिनल को पुनः लोड करना पड़ा।
जोलीजुल

2

अगर किसी के पास ये मुद्दे हैं तो सर्किल सीआई I के साथ लगभग एक दिन के लिए संघर्ष कर रहा था।

अंत में मुझे लगता है कि सबसे अच्छा तरीका उनके सर्वर से डाउनलोड करने के लिए उनके प्रदान किए गए समाधान का उपयोग करना है।

curl https://cocoapods-specs.circleci.com/fetch-cocoapods-repo-from-s3.sh | bash -s cf

इस लिंक से आप देख सकते हैं कि कोकोपोड्स कोर योगदानकर्ता में से एक का कहना है कि यह ठीक है: कोकोआपोड्स रेपो कैश लगभग हर 30 मिनट में अपडेट किया जाता है, जो आमतौर पर लगातार होता है जो केवल पिछले 6 पुश टू द स्पेक्स रेपो को याद करता है।

https://discuss.circleci.com/t/best-practice-for-use-of-cached-cocoapods-specs/18897/2


0

मैंने टर्मिनल में अगला काम किया:

  1. काढ़ा स्थापित खोलता है

    यदि आपके पास घर का काढ़ा नहीं है:

    / usr / bin / ruby ​​-e "$ (curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install )"

    और दोहराएँ p.1

  2. निर्यात पथ = "/ usr / स्थानीय / ऑप्ट / खुलता है / बिन: $ पथ"

  3. खोलता संस्करण

    आउटपुट: ओपनएसएसएल 1.0.2 एन 7 दिसंबर 2017

  4. फली अद्यतन


0

मैं भी उसी समस्या का सामना कर रहा था। मैंने इसे केवल टर्मिनल से दो कमांड एक्सेस करके हल किया।

सुणो रत्न अन्नमयो

और फिर

सुणो मणि स्थापित नानाइमो

आशा है कि यह मदद करेगा।



0

मेरे लिए नीचे के कमांड ने इस मुद्दे को तय किया

मैक से कोकोपोड्स निकालना

 sudo gem uninstall cocoapods

मैक पर कोकोपोड्स स्थापित करना

sudo gem install cocoapods

0

किसी को भी इसी तरह के मुद्दे का सामना करना पड़ रहा है, जहां दूरस्थ समय से पहले लटका हुआ है, sshइसके बजाय रेपो को क्लोन करने के लिए उपयोग करें।

git क्लोन क्लोन git@github.com: CocoaPods / Specs.git मास्टर।

GitHub रेपो को क्लोन करने के लिए SSH का उपयोग करने के लिए, आपके पास GitHub खाता होना चाहिए और आपके SSH कुंजी इसके साथ संबद्ध होना चाहिए।

यहां उनके प्रलेखन का पालन करें


0
  • रूबी और कोकोपोड्स को अपडेट करें।
  • कोकापोड्स एनवी में माणिक संस्करण की जांच करें।

उपयोग

pod env

यहां छवि विवरण दर्ज करें

rbenv global x.x.x
ruby -v

रूबी संस्करण बदलें। यदि काम नहीं कर रहा है, तो इस rbenv को माणिक संस्करण नहीं बदलते हुए देखें

कोकापोड्स एनवी में माणिक संस्करण की जांच करें। यदि नहीं बदला है,

which pod

सुनिश्चित करें कि आपका पॉड पाथ है /usr/local/bin/pod, यदि नहीं

export PATH=/usr/local/bin:$PATH
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.