git - गिट रिटर्निंग त्रुटि कोड 403 घातक को धक्का देना: HTTP अनुरोध विफल हुआ




github dvcs (20)

मैं प्रमाणीकृत HTTPS पर इस रेपो की एक प्रति क्लोन करने में सक्षम था। मैंने कुछ काम किया है और गिटहब सर्वर पर वापस धक्का देना चाहता हूं। विंडोज 7 x64 पर सिग्विन का उपयोग करना।

C:\cygwin\home\XPherior\Code\lunch_call>git push
Password:
error: The requested URL returned error: 403 while accessing https://MichaelDrog
[email protected]/derekerdmann/lunch_call.git/info/refs

fatal: HTTP request failed

इसे वर्बोज़ मोड के साथ भी सेट करें। मैं अभी भी बहुत परेशान हूँ।

C:\cygwin\home\XPherior\Code\lunch_call>set GIT_CURL_VERBOSE=1

C:\cygwin\home\XPherior\Code\lunch_call>git push
Password:
* Couldn't find host github.com in the _netrc file; using defaults
* About to connect() to github.com port 443 (#0)
*   Trying 207.97.227.239... * 0x23cb740 is at send pipe head!
* Connected to github.com (207.97.227.239) port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: C:\Program Files (x86)\Git/bin/curl-ca-bundle.crt
  CApath: none
* SSL connection using AES256-SHA
* Server certificate:
*        subject: 2.5.4.15=Private Organization; 1.3.6.1.4.1.311.60.2.1.3=US; 1.
3.6.1.4.1.311.60.2.1.2=California; serialNumber=C3268102; C=US; ST=California; L
=San Francisco; O=GitHub, Inc.; CN=github.com
*        start date: 2011-05-27 00:00:00 GMT
*        expire date: 2013-07-29 12:00:00 GMT
*        subjectAltName: github.com matched
*        issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=DigiCert High Ass
urance EV CA-1
*        SSL certificate verify ok.
> GET /derekerdmann/lunch_call.git/info/refs?service=git-receive-pack HTTP/1.1
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache

< HTTP/1.1 401 Authorization Required
< Server: nginx/1.0.4
< Date: Thu, 15 Sep 2011 22:44:41 GMT
< Content-Type: text/plain
< Connection: keep-alive
< Content-Length: 55
< WWW-Authenticate: Basic realm="GitHub"
<
* Ignoring the response-body
* Expire cleared
* Connection #0 to host github.com left intact
* Issue another request to this URL: 'https://[email protected]/dereker
dmann/lunch_call.git/info/refs?service=git-receive-pack'
* Couldn't find host github.com in the _netrc file; using defaults
* Re-using existing connection! (#0) with host github.com
* Connected to github.com (207.97.227.239) port 443 (#0)
* 0x23cb740 is at send pipe head!
* Server auth using Basic with user 'MichaelDrogalis'
> GET /derekerdmann/lunch_call.git/info/refs?service=git-receive-pack HTTP/1.1
Authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache

< HTTP/1.1 401 Authorization Required
< Server: nginx/1.0.4
< Date: Thu, 15 Sep 2011 22:44:41 GMT
< Content-Type: text/plain
< Connection: keep-alive
< Content-Length: 55
* Authentication problem. Ignoring this.
< WWW-Authenticate: Basic realm="GitHub"
* The requested URL returned error: 401
* Closing connection #0
* Couldn't find host github.com in the _netrc file; using defaults
* About to connect() to github.com port 443 (#0)
*   Trying 207.97.227.239... * 0x23cb740 is at send pipe head!
* Connected to github.com (207.97.227.239) port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: C:\Program Files (x86)\Git/bin/curl-ca-bundle.crt
  CApath: none
* SSL re-using session ID
* SSL connection using AES256-SHA
* old SSL session ID is stale, removing
* Server certificate:
*        subject: 2.5.4.15=Private Organization; 1.3.6.1.4.1.311.60.2.1.3=US; 1.
3.6.1.4.1.311.60.2.1.2=California; serialNumber=C3268102; C=US; ST=California; L
=San Francisco; O=GitHub, Inc.; CN=github.com
*        start date: 2011-05-27 00:00:00 GMT
*        expire date: 2013-07-29 12:00:00 GMT
*        subjectAltName: github.com matched
*        issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=DigiCert High Ass
urance EV CA-1
*        SSL certificate verify ok.
* Server auth using Basic with user 'MichaelDrogalis'
> GET /derekerdmann/lunch_call.git/info/refs HTTP/1.1
Authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache

* The requested URL returned error: 403
* Expire cleared
* Closing connection #0
error: The requested URL returned error: 403 while accessing https://MichaelDrog
[email protected]/derekerdmann/lunch_call.git/info/refs

fatal: HTTP request failed

ये गिट और कर्ल के संस्करण हैं जो मेरे पास हैं:

C:\Users\XPherior>git --version
git version 1.7.4.msysgit.0

C:\Users\XPherior>curl --version
curl 7.21.7 (amd64-pc-win32) libcurl/7.21.7 OpenSSL/0.9.8r zlib/1.2.5
Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtsp
smtp smtps telnet tftp
Features: AsynchDNS GSS-Negotiate Largefile NTLM SSL SSPI libz

  1. अपने भंडार पर क्लिक करें
  2. दाईं तरफ, "सेटिंग्स" पर क्लिक करें
  3. बाईं ओर विकल्प पैनल पर, "सहयोगी" पर क्लिक करें
  4. गिटहब में उस व्यक्ति का नाम जोड़ें जिसे आप जानते हैं
  5. "सहयोगी जोड़ें" पर क्लिक करें

इसके बाद हमारे "पुश टू गिट" ने ठीक काम किया।


अन्य उत्तर जो एसएसएच प्रकार को स्विच करने का सुझाव देते हैं, इस बिंदु को याद करते हैं। HTTPS समर्थित है, लेकिन आपको अपने साथ GITHUB पासवर्ड लॉग इन करना होगा, न कि आपके एसएसएच पासफ्रेज (जो मुझे वही सटीक त्रुटि दे रहा था)।

मुझे एक ही समस्या हो रही थी, लेकिन टर्मिनल पासवर्ड प्रॉम्प्ट पर मेरे वास्तविक गिटहब पासवर्ड का उपयोग करना सुनिश्चित करने के लिए कॉन्फ़िगरेशन में कोई बदलाव नहीं किया गया था, या एसएसएच का सहारा लेना था।

इस बात को ध्यान में रखना महत्वपूर्ण है, कई सार्वजनिक संस्थान (जैसे मेरा स्कूल) एसएसएच को अवरुद्ध कर देगा, लेकिन एचटीटीपीएस की अनुमति दें (यही कारण है कि मैंने पहली जगह एचटीटीपीएस पर क्लोनिंग शुरू कर दी थी)।

उम्मीद है कि किसी और को एक ही समस्या रखने में मदद करता है ...



इस त्रुटि की समस्या निवारण के लिए Github पृष्ठ समर्पित है:

https://help.github.com/articles/https-cloning-errors

मेरे मामले में यह पता चला कि गिट (1.8.5.2) के एक नए संस्करण का उपयोग करके इस समस्या को हल किया गया।


एक 403 कोड "निषिद्ध" है। सर्वर ने आपका अनुरोध देखा और इसे मना कर दिया। क्या आपको उस भंडार को धक्का देने की अनुमति है?


कभी-कभी सेटिंग में कुछ भी गलत नहीं होता है, और github सर्वर पर कुछ समस्याएं होती हैं।

https://status.github.com - जिथब की वर्तमान स्थिति :)


गिटबॉक्स ऐप के भीतर https को http में बदलने के बाद, यह मेरे लिए काम करता है।


निश्चित रूप से https प्रोटोकॉल का उपयोग करके लॉगिन करने में सक्षम होने के लिए, आपको पहले अपने प्रमाणीकरण प्रमाण पत्र को गिट रिमोट यूआरआई में सेट करना चाहिए:

git remote set-url origin https://[email protected]/user/repo.git

फिर आपको git push कोशिश करते समय पासवर्ड के लिए कहा जाएगा।

वास्तव में, यह http प्रमाणीकरण प्रारूप पर है। आप भी एक पासवर्ड सेट कर सकते हैं:

https://youruser:[email protected]/user/repo.git

आपको अवगत होना चाहिए कि यदि आप ऐसा करते हैं, तो आपका जीथब पासवर्ड आपके .git निर्देशिका में सादे टेक्स्ट में संग्रहीत किया जाएगा, जो स्पष्ट रूप से अवांछित है।



मुझे अभी यह समस्या थी, और यह पता चला कि मेरे सर्वर /etc/resolver.conf फ़ाइल में एक खराब आईपी पता था। दूसरों की मदद कर सकते हैं।


मुझे बस एक ही समस्या मिली और बस पता चला कि क्या कारण है।

गिथब रेपो को पढ़ने और लिखने के लिए केवल एसएसएच तरीके का समर्थन करता है, हालांकि https तरीका भी 'पढ़ें और लिखें' प्रदर्शित करता है।

इसलिए आपको अपने पीसी पर अपने रेपो कॉन्फ़िगरेशन को एसएसएच तरीके से बदलना होगा:

  1. अपनी repo निर्देशिका के तहत .git/config फ़ाइल संपादित करें
  2. अनुभाग [remote "origin"] तहत url= प्रविष्टि url=
  3. इसे url=https://[email protected]/derekerdmann/lunch_call.git से url=ssh://[email protected]/derekerdmann/lunch_call.git । यही है, सभी ग्रंथों को @ प्रतीक से ssh://git से पहले बदलें
  4. config फ़ाइल सहेजें और छोड़ें। अब आप गिटहब पर अपने रेपो को सिंक करने के लिए git push origin master का उपयोग कर सकते हैं

मुझे लगता है कि @ डिस्पवाटर को पुराने संस्करणों के लिए सही जवाब मिला। HTTPS URL को उपयोगकर्ता नाम होना चाहिए। मेरे पास गिट 1.7.0.4 था और git push origin master तब तक पासवर्ड नहीं मांगेगा जब तक कि मैंने इसे जोड़ा नहीं।


मेरे मामले में, मुझे अपने ईमेल आईडी के लिए उपरोक्त त्रुटि मिल रही थी, जिथब अभी तक सत्यापित नहीं था । गिटहब अन-सत्यापित ईमेल की यह चेतावनी दे रहा था।

ईमेल की पुष्टि करना, और फिर मेरे लिए काम करना धक्का देना।


मेरे लिए क्या काम करता है http से ssh में बदल रहा है:

git remote rm origin
git remote add origin [email protected]:username/repoName.git

फिर इसे git remote -v साथ जांचें


मैं वास्तव में इसके लिए एक बहुत ही सरल फिक्स था। मैंने जो कुछ किया वह गिट कॉन्फ़िगरेशन फ़ाइल को भंडार क्लोन करने के बाद अलग-अलग संपादित किया गया था। रिमोट उत्पत्ति यूआरएल वह है जिसे आपको अपनी डिफ़ॉल्ट कॉन्फ़िगरेशन फ़ाइल में संपादित करने की आवश्यकता होती है। यह नीचे देखा जाना चाहिए

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = https://*username*@github.com/*username*/*repository*.git
[branch "master"]
    remote = origin
    merge = refs/heads/master

मैंने इस समस्या की अपनी भिन्नता का पता लगाया।

यह मुद्दा प्रोटोकॉल को https से एसएसएल में नहीं बदल रहा था, बल्कि इसके बजाय, गीथब वैश्विक उपयोगकर्ता नाम और ईमेल सेट करना! (मैं एक निजी भंडार में धक्का देने की कोशिश कर रहा था।

git config --global user.email "[email protected]"

git config --global user.name "Your full name"

यह मेरे लिए काम करता है -:

git remote set-url origin https://[email protected]/user/repo.git

आशा करता हूँ की ये काम करेगा


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


एसएसएच ( Xiao अनुसार) या http urls का उपयोग करते समय अनुमति रखने वाले लोगों के लिए 403 त्रुटि से इंकार कर दिया गया है

>git config --global --unset-all credential.helper

>git config --unset-all credential.helper

व्यवस्थापक अधिकारों के साथ

>git config --system --unset-all credential.helper

मैक ओएस एक्स पर वही त्रुटि और संकल्प।

सब कुछ ठीक काम कर रहा था जब तक कि मैंने गिटहब पर एक नया खाता नहीं बनाया और धक्का देने की कोशिश की

$ git push -u origin master

और त्रुटि मिली:

रिमोट: NEWUSER / NEWREPO.git को अनुमति OLDUSER से इनकार कर दी गई है। घातक: ' https://github.com/NEWUSER/NEWREPO.git/ ' तक पहुंचने में असमर्थ: अनुरोधित यूआरएल त्रुटि लौटा: 403

इसे वैश्विक या वर्तमान रेपो के लिए उपयोगकर्ता नाम को सेट करके तय किया जाना चाहिए था

$ git config –-global user.name NEWUSER
$ git config user.name NEWUSER

लेकिन ऐसा नहीं हुआ।

मुझे पासवर्ड अनुभाग के तहत कीचेन एक्सेस एप से गिटहब से जुड़े ओल्डस्यूर को हटाकर इसे ठीक कर दिया गया । फिर पुश कमांड सफल हो गया।

$ git push -u origin master

reference





dvcs