Git पुल / पुश - HTTPS तक पहुंचने में असमर्थ, SSL रूटीन डाउन होने लगता है


105

मैं एक दैनिक आधार पर Git (और GitHub) का उपयोग कर रहा हूं और सब कुछ ठीक काम कर रहा है और अचानक, मैं अब अपने Git कमांड के माध्यम से अपने दूरस्थ GitHub रिपॉजिटरी के साथ संवाद नहीं कर सकता। जब मैं "गिट पुल" की कोशिश करता हूं, तो यह निम्नलिखित त्रुटि देता है:

घातक: ' https://github.com/snahrvar/eatibl.git/ ' तक पहुँचने में असमर्थ : त्रुटि: 1407742E: SSL रूटीन: SSL23_GET_SERVER_HELLO: tlsv1 अलर्ट प्रोटोकॉल संस्करण

इसलिए, मैंने कई रिपॉजिटरी में परीक्षण किया, और मुझे अपने कंप्यूटर पर समान त्रुटियां मिलीं। मेरे पास कोई और समान रिपोजिटरी के साथ बातचीत हुई थी, और यह उनके लिए ठीक काम करता है। इस त्रुटि से पहले, मैंने एक प्रोजेक्ट पर "एनपीएम इंस्टॉल्ड शार्प" किया था और जो फेल हो गया, और मुझे संदेह है कि यह कुछ एसएसएल सेटिंग के साथ गड़बड़ हो सकता है, लेकिन यह एक जंगली अनुमान है!

किसी भी सामान्य विचार या मार्गदर्शन की बहुत सराहना की जाएगी!

यदि यह बिल्कुल उपयोगी है, तो यहां मेरा वातावरण है:

  • Git संस्करण: 1.9.4.msysgit.2
  • विंडोज संस्करण: विंडोज 8.1

वही समस्या यहाँ ?
LYES - CHIOUKH

समान यहाँ git 1.9.5.msysgit.1
मैक्सिम हेलेन

मैं एक ही समस्या का सामना कर रहा हूँ
चेस cabrera

11
मेरा मानना ​​है कि यह बदलाव त्रुटि का कारण है: github.com/blog/2507-weak-cryptographic-standards-removed
Dan H

मैं एक ही समस्या थी और Github डेस्कटॉप स्थापित किया और सब कुछ ठीक काम किया!
डेमियन

जवाबों:


69

TortoiseGit और GCM को अपडेट करने से मुझे मदद नहीं मिली, लेकिन टिप्पणियों में @ Frederic की सलाह के अनुसार, खुद Git को अपडेट किया।

https://git-scm.com/download/win

यह सुनिश्चित करने के लिए कि Git का नया संस्करण ठीक से स्थापित है और पिछले इंस्टॉलेशन के साथ संघर्ष नहीं करता है (यदि आप TortoiseGit का उपयोग करते हैं, तो हो सकता है, क्योंकि यह विभिन्न फ़ोल्डरों का उपयोग करेगा और PATH चर के साथ गड़बड़ करेगा), अपडेट Git को स्थापित करने से पहले मौजूदा Git इंस्टॉलेशन को हटा दें । व्यवस्थापक अधिकारों के साथ भी इंस्टॉल करना पड़ सकता है।


मुझे यकीन नहीं है कि आज इन त्रुटियों को फेंकना शुरू करने के लिए गिट के अंतिम संस्करण के साथ क्या हुआ लेकिन यह जवाब मेरे लिए है। मैंने एक नया इंस्टॉलेशन (2 दिन पुराना बिल्ड) लिया और मैं वापस आ रहा हूं और बिना एसएसएल त्रुटियों के चल रहा हूं। हिस्टैक में सुई के बारे में बात करें।
जेफबौमगार्ड

3
सबसे दिलचस्प बात यह है कि जीथब खुद इसका उल्लेख नहीं कर रहे हैं, भले ही यह उनके हाल के अपडेट से संबंधित हो। अन्य कोड होस्टिंग के साथ समान समस्याओं के बारे में त्वरित Google खोज OpenSSL को दोष देती है।
फॉक्स

हां, बस नवीनतम संस्करण को अद्यतन करने की आवश्यकता है!
साभार

1
@gath आपके पास शायद git के 2 असंगत इंस्टॉलेशन हैं, मौजूदा एक को पूरी तरह से अनइंस्टॉल करने की कोशिश करें, फिर गिट को खरोंच से पुनर्स्थापित करें। लेकिन आपकी त्रुटि एक अलग है stackoverflow.com/questions/3778042/…
feos

5
मेरे लिए "अपडेट किए गए गिट को स्थापित करने से पहले मौजूदा Git इंस्टॉलेशन को हटा दें" इस पूरे डिबेकल की कुंजी थी।
रिचर्ड ओकेर्बी

20

संभवतः GitHub के कमजोर एसएसएल एन्क्रिप्शन प्रोटोकॉल के अपवर्तन के साथ एक असंगतता में चलने की संभावना है:

कमजोर क्रिप्टोग्राफिक मानकों को हटाने का नोटिस

समाधान अलग-अलग होगा, लेकिन विंडोज के लिए आपको Git क्रेडेंशियल मैनेजर को 1.14.0 पर अपग्रेड करने की आवश्यकता है

https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases/tag/v1.14.0


1
क्या वे विंडोज़ के लिए बिल्ट-इन Git क्रेडेंशियल मैनेजर का समर्थन करना जारी रखेंगे: wincred। मुझे उस टूल के साथ वही त्रुटि मिल रही है
मैक्स हार्टशोर्न

इस उत्तर ने बदलाव के बारे में संदर्भ प्रदान करने में मदद की, लेकिन @ एफोस से समाधान वह है जिसने मेरे लिए काम किया है (विंडोज 10,
टोर्टोइसगिट

14

यदि आप Android Studio या IntelliJ IDEA का उपयोग कर रहे हैं, तो Git को नवीनतम संस्करण में अपडेट कर रहे हैं और नए संस्करण को इंगित करने के लिए पथ को बदलकर मेरे लिए समस्या का समाधान कर रहे हैं।

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


1
इसने मेरे लिए भी काम किया: Git के नवीनतम संस्करण को स्थापित करें और इसे IntelliJ IDEA को इंगित करें।
user1825866

8

TortoiseGit का उपयोग करते हुए, मैंने इसके लिए दिए गए अन्य सभी सुधार / अपडेट किए और फिर भी कोई सफलता नहीं मिली। मैंने यह पाया: अचानक से धक्का / खींच / पकड़ नहीं सकता

Windows Git.exe पथ के लिए Git के लिए मेरी कछुआ सेटिंग्स इंगित कर रही थी C:\Program Files (x86)\Git\bin। मैंने इसे बदल दिया C:\Program Files\Git\binऔर अब यह फिर से काम कर रहा है।


3
मैंने इसे सेटिंग्स डायलॉग Check nowमें बटन का उपयोग करके चेक किया General, x86मुझे जो भी रास्ता मिला है git version 1.9.5.msysgit.1, उसे बदलने के बाद C:\Program Files\Git\binमुझे मिल गया है git version 2.16.2.windows.1और उस पथ के साथ सभी ठीक काम करता है।
अविकसित

8

इसी से मेरा काम बना है।

  1. यहाँ से Git का नवीनतम संस्करण स्थापित करें: https://git-scm.com/download/win
  2. TortoiseGit में, मेनू सेटिंग्सजनरलGit.exe पथ पर जाएं - इसे 32-बिट से 64-बिट पथ में बदलें: C: \ Program Files (x86) \ Git \ bin → C: \ Program Files \ Git bin

अच्छी बात। यदि कोई भी (मेरे जैसा) पुराने विंडोज 32-बिट संस्करण का उपयोग कर रहा है, तो इसे PATH पर प्रतिस्थापित करना सुनिश्चित करें।
एजी

इसने मेरे समय @dgundersen
तेजस मेहता

8

मेरी स्थिति में गैट को अपडेट करना पर्याप्त नहीं था। कई घंटों तक डिबग करने के बाद, यह मेरा फिक्स था:

C:\wamp64\www\maandlastenmanager> git config http.sslVersion
tslv1.0

C:\wamp64\www\maandlastenmanager> git config http.sslVersion tlsv1.2

C:\wamp64\www\maandlastenmanager> git config http.sslVersion
tslv1.2

इससे मेरे लिए समस्या हल हो गई, और पूरी तरह से अलग सेटअप (मैक ओएस एक्स) पर। curlअभी भी मुझे संदेश देता है, जो मुझे आश्चर्यचकित करता है कि क्या कोई सेटिंग ऐसी है जो सभी ssl-apps के लिए जाती है, न कि सिर्फ git...
chesterbr

इनमें से कौन सी रेखा है?
दिमित्री ज़ैतसेव

2

मेरे दृश्य स्टूडियो कोड टर्मिनल पर GitHub से कोड खींचने के दौरान मुझे यही समस्या थी । मैंने पिछले उत्तरों में सलाह को उपयोगी पाया और नीचे दिए गए चरणों का पालन करते हुए एक समाधान को हैक किया:

यह भंडार काफी उपयोगी था।

मुझे उम्मीद है इससे किसी को सहायता मिलेगी।


2

TL; DR: git config --system http.sslbackend schannelऔर github.comअपने एंटीवायरस सॉफ़्टवेयर में HTTPS चेक बंद करें


मैं विंडोज 8 x64 पर Git कमांड लाइन का उपयोग कर रहा हूं। इसके अलावा, मेरा एंटीवायरस सॉफ़्टवेयर डिफ़ॉल्ट रूप से HTTPS ट्रैफ़िक की जाँच करता है । इस प्रश्न का उत्तर देने में अन्य लोगों की तरह, मैं लगभग रोजाना GitHub का उपयोग करता हूं।

  • Git अपडेट करना - मदद नहीं की - क्योंकि मैंने OpenSSL का उपयोग किया है (नीचे देखें)
  • क्रेडेंशियल मैनेजर को अपडेट करना - मदद नहीं की

फिर मैंने एसएसएल बैकएंड स्विच करने के साथ खेलना शुरू किया:

git config --system http.sslbackend openssl ----------------vs------------------ git config --system http.sslbackend schannel और SSL ट्रैफ़िक के लिए एंटीवायरस सॉफ़्टवेयर जाँच:

  1. OpenSSL, HTTPS चेक ऑन: error:0407006A:rsa routines:RSA_padding_check_PKCS1_type_1:block type is not 01
  2. OpenSSL, HTTPS चेक बंद: SSL certificate problem: unable to get local issuer certificate
  3. SecureChannel, HTTPS चेक ऑन: schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate.
  4. SecureChannel, HTTPS चेक बंद: ठीक काम किया

पुनश्च: कमांडलाइन के बजाय, आप "नवीनतम विंडोज़ एसएसएल सत्यापन लाइब्रेरी का उपयोग करें" का चयन करके नवीनतम गिट को फिर से स्थापित कर सकते हैं।

PPS: मामला (3) स्कैनल लाइब्रेरी में एक बग प्रतीत होता है, क्योंकि MITM सर्टिफिकेट मेरे एंटीवायरस सॉफ़्टवेयर का उपयोग मेरी मशीन पर श्वेतसूची में किया जाता है।


गिट को फिर से स्थापित करते समय, मैंने इसकी पुरानी स्थापना को पूरी तरह से हटा दिया, और नई स्थापना के लिए, मैंने ओपनएसएसएल को चुना, इसलिए मुझे लगता है कि इसे खरोंच से पुनर्स्थापित किया गया। लेकिन मेरे पास एंटीवायरस नहीं है। क्या SSL बैकएंड का पुनर्स्थापन आपके लिए कुछ भी बदल सकता है, या आपने ऐसा नहीं किया?
फोस

@ फॉस हां, यह केवल मेरे लिए नॉन-ओपनएसएसएल मोड में काम करता है। साथ ही, मुझे AV में https चेक बंद करना पड़ा।
माइक

यह अभी भी मेरे लिए स्पष्ट नहीं है, क्या आपने एसएसएल को फिर से स्थापित किया है या नहीं?
फॉक्स

@ फोस नो मैं नहीं। मुझे नहीं लगता कि विंडोज पर कोई "एसएसएल को फिर से इंस्टॉल कर सकता है"। तो यकीन नहीं होता कि इससे आपको क्या मतलब है। जब आप नवीनतम गिट क्लाइंट स्थापित करते हैं, तो आपके पास एक विकल्प होता है - ओपनएसएसएल बैकएंड या विंडोज एकीकृत। मैंने ओपनएसएसएल को चुना। यह काम नहीं किया और मैंने बैकएंड को कॉन्फ़िगरेशन के माध्यम से बदल दिया। आशा है कि यह स्पष्ट करता है।
माइक मकरोव

यह करता है, धन्यवाद। मुझे लगता है कि आपको ओपी की तुलना में पूरी तरह से अलग समस्या थी।
फॉक्स

1

MacOS पर, आप नवीनतम के माध्यम से स्थापित कर सकते हैं ।gitHomebrew


दुर्भाग्य से यह मैक ओएस एक्स 10.7.5 (शेर) पर मेरे लिए काम नहीं किया - एक ही त्रुटि मिली। मैं तो Homebrewखरोंच से स्थापित करने की कोशिश की - यह एक कैच 22 लगता है। error: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version while accessing https://github.com/Homebrew/brew/info/refs?service=git-upload-pack fatal: HTTP request failed
सेता

@ सीता, खैर, इसे मैन्युअल रूप से रिलीज़ पृष्ठ से स्थापित करने का प्रयास किया जा सकता है? उन्हें लगता है कि 1.5.5
AS

1

मेरे लिए Git 1.9.5.msysgit.1 के साथ भी। मैंने https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases/tag/v1.14.0 स्थापित करने की कोशिश की , लेकिन कोई बदलाव नहीं हुआ।

दरअसल, स्थापना के बाद कुछ भी नहीं होता है; शायद मैं कुछ गलत कर रहा हूँ? (यह प्रारंभिक प्रश्न के लिए मदद नहीं कर सकता है, लेकिन अन्य लोगों के लिए, हाँ!)


6
समुदाय की मदद करने के लिए, मैंने सिर्फ git (विंडोज़ के लिए) ( git-scm.com/download/win के साथ) अपडेट किया और इसने समस्या को हल कर दिया!
फ्रेडरिक

2
विंडोज 7 प्रो / 64 के तहत, मैंने git-scm.com/download/win लिंक के उपयोग से गिट को अपग्रेड किया। इसने git को c: \ program files \ git के बजाय c: \ program files (x86) \ git में स्थापित किया। मेरा संस्करण 1.9.5.msysgit.1 से बदलकर 2.16.2.windows.1 हो गया और जब मैंने नए संस्करण में इंगित करने के लिए WebStorm को कॉन्फ़िगर किया, तो रहस्यमय 1407742E: SSL रूटीन: SSL23_GET_SERVER_HELLO: tlsv1 अलर्ट प्रोटोकॉल संस्करण त्रुटि बंद हो गई।
CODE-REaD

FYI करें, मेरा सेटअप है:C:\Program Files\Git\etc> cat install-options.txt Editor Option: Notepad++ Path Option: Cmd Plink Path: C:\Program Files (x86)\PuTTY\plink.exe SSH Option: Plink CURL Option: OpenSSL CRLF Option: CRLFAlways Bash Terminal Option: MinTTY Performance Tweaks FSCache: Enabled Use Credential Manager: Enabled Enable Symlinks: Disabled
CODE-REaD

आपको उत्तर को अपग्रेड करने के लिए अपना प्रोत्साहन देना चाहिए।
एडवर्ड थॉमसन

1

हाँ, मुझे आज एक पुल अनुरोध पर एक ही समस्या का सामना करना पड़ा और समाधान केवल विंडोज के लिए गिट के नवीनतम (2.16.2) 64-बिट संस्करण को डाउनलोड करके गिट को अपडेट करना था। इसे 5 दिन पहले 2018-02-20 को जारी किया गया था।


1

@Andw की टिप्पणी ने मेरे लिए काम किया:

इन चरणों का उपयोग करके Git संस्करण 1.9.5 से 2.15.1 तक अपडेट करें:

SourceTree में, मेनू टूल पर जाएंविकल्पGitएंबेडेड Git का उपयोग करें


1

एक त्वरित समाधान git config --global http.sslVerify सच होगा , लेकिन यह अनुशंसित नहीं है क्योंकि यह एसएसएल का उपयोग करके उद्देश्य को हरा देता है।

SSL URL के बजाय ssh कीज़ का उपयोग करने का दूसरा और बेहतर तरीका है।

SSH कुंजी उत्पन्न करने के लिए चरण

o Git टर्मिनल (Git Bash) में निम्नलिखित कमांड चलाएँ: ssh-keygen

कमांड चलाने के बाद, निम्न संदेश दिखाई देगा:

सार्वजनिक / निजी RSA कुंजी जोड़ी बनाना।

वह फ़ाइल दर्ज करें जिसमें कुंजी (/h//.ssh/id_rsa) को सहेजना है:

कुंजी को संग्रहीत करने के लिए पथ दें, उदाहरण के लिए, उस फ़ाइल को दर्ज करें जिसमें कुंजी (/h//.ssh/id_rsa) को सहेजना है: C:\Users\Public\my-new-ssh-key

फिर उस कुंजी के लिए पासफ़्रेज़ दें (न्यूनतम 8 वर्णों का कोई भी पासवर्ड)

• अगला निम्नलिखित कमांड चलाएँ: eval "$ (ssh-agent -s)"

• निम्न आदेश चलाएँ: ssh-add C:/Users/Public/my-new-ssh-keyनोट: नए बनाए गए SSH कुंजी के पथ में आगे स्लैश का उपयोग करें।

उसके बाद, फ़ाइल की सामग्री my-new-ssh-key.pub जोड़ें और इसे सार्वजनिक कुंजी (Bitbucket, GitHub, आदि) के लिए पाठ क्षेत्र में जोड़ें


0

दूरस्थ रिपॉजिटरी से जुड़ने, खींचने, धक्का देने आदि के लिए कनेक्ट करते समय, मुझे एक ही त्रुटि थी:

fatal: unable to access 'https://github.com/repository.git/': error:1
407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version

मैंने 32-बिट के स्थान पर Git 64-बिट को फिर से इंस्टॉल किया और इस मुद्दे को तय किया।

स्थापना के बाद, पर्यावरण चर में गिट पथ को सत्यापित करें। यह होना चाहिए:

C:\Program Files\Git\bin\git.exe

0

यह IntelliJ और RubyMine के साथ एक मुद्दा है। टीएलएस के पक्ष में गीथहब में एसएसएल (पीसीआई अनुपालन शायद?) अक्षम होना चाहिए। यदि आप IntelliJ या RubyMine में सेटिंग्स खोलते हैं और संस्करण नियंत्रण> Git पर नेविगेट करते हैं, तो आप देखेंगे कि यह एप्लिकेशन के पथ के तहत स्थापित git.exe का उपयोग कर रहा है। आपको Git का सबसे वर्तमान संस्करण डाउनलोड करना चाहिए और अपनी VCS सेटिंग में पथ को बदलना चाहिए, जैसे कि C: \ Program Files \ Git \ bin \ git.exe यदि आप इसे विंडोज पर स्थापित करते हैं। उसके बाद एक आकर्षण की तरह काम करता है।


0

कभी-कभी, यह पुराने msysgit के कारण होता है जो पुराने ssl का उपयोग कर रहा है और किसी भी अधिक को बनाए नहीं रखता है, आप विंडोज़ के लिए नवीनतम गिट स्थापित कर सकते हैं , और इसके लिए कछुआ सेटिंग में git.exe पथ को इंगित कर सकते हैं, फिर यह समस्या चली गई।


0

एक समान त्रुटि का सामना करना पड़ा। खिड़कियों पर, नवीनतम संस्करण के लिए खिड़कियों पर अपडेट किया गया गिट। इससे समस्या ठीक हुई।


यह स्वीकार किए गए उत्तर में कुछ भी कैसे जोड़ता है जो समस्या को ठीक करने के लिए अद्यतन करने का सुझाव देता है?
डेविड

मैंने समझाया कि मेरे लिए क्या काम किया। ऐसा ही कुछ अन्य लोगों ने भी किया।
Olusola Omosola

0

Git वर्जन अपग्रेड ने मेरे लिए टोटका किया। मेरे पास संस्करण 1.9.5 था और इसलिए मैंने विंडोज़ पर 2.21.0 में अपग्रेड किया । इसके अलावा उन्नयन बहुत आसान है। हमें पुराने संस्करण को अनइंस्टॉल करने की आवश्यकता नहीं है। नवीनतम Git इंस्टॉलर डाउनलोड करें और बस अगले डिफ़ॉल्ट विकल्पों का उपयोग करके दबाए रखें और संस्करण को नए संस्करण में बदल दिया जाएगा और सभी पुरानी सेटिंग्स अभी भी ssh कुंजियों की तरह काम कर रही होंगी आदि। हमें फिर से चाबियाँ बनाने और डालने की आवश्यकता नहीं है। github या कोई अन्य रिपॉजिटरी।

पहले मेरा https प्रोटोकॉल क्लोनिंग काम नहीं कर रहा था और त्रुटि दे रहा था

घातक: ' https://github.com/tensorflow/models/ ': त्रुटि: 1407742E: SSL रूटीन: SSL23_GET_SERVER_HELLO: tlsv1 अलर्ट प्रोटोकॉल संस्करण तक पहुँचने में असमर्थ

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

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