त्रुटि कोड 403 लौटाते हुए Git को धक्का देना: HTTP अनुरोध विफल


634

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

C:\cygwin\home\XPherior\Code\lunch_call>git push
Password:
error: The requested URL returned error: 403 while accessing https://MichaelDrog
alis@github.com/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://MichaelDrogalis@github.com/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
alis@github.com/derekerdmann/lunch_call.git/info/refs

fatal: HTTP request failed

ये मेरे पास git और curl के संस्करण हैं:

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

3
टिप्पणी को देखें, जिसे उत्तर के रूप में पोस्ट किया जाना चाहिए। यह 1.7.1 के साथ काम किया, लापता उपयोगकर्ता / पासवर्ड शीघ्र समस्या थी, भी। करने के लिए रंगमंच की सामग्री stackoverflow.com/a/9575906/805284 ...
sjas

2
जाँच करें कि उपयोगकर्ता ने रिपॉजिटरी तक पहुंच /
रीडिंग लिखी

22
भविष्य में, उदाहरण http हेडर दिखाते समय "प्राधिकरण: मूल <सामान>" पेस्ट न करें। Base64 डिकोड करना आसान है और अपना पासवर्ड प्राप्त करें। @ माइक: यदि आपने इस प्रश्न को पोस्ट करने के बाद अपना github पासवर्ड नहीं बदला है, तो मैं आपको ऐसा करने का सुझाव दूंगा।
FlipMcF

4
@FlipMcF धन्यवाद आदमी। अनजान था। पासवर्ड बदला गया।
माइक

6
@ माय एनपी। अब मैं बेशर्मी से उस पर लिखे गए एक छोटे से ब्लॉग को बढ़ावा देता हूँ: goo.gl/bpae94
FlipMcF

जवाबों:


836

मुझे बस एक ही समस्या है और यह समझ में आया कि क्या कारण है।

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

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

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

56
यह अक्सर तब सामने आता है जब आप पढ़े-लिखे पते के बजाय git रीड-ओनली एड्रेस (जो आप लॉग इन नहीं होते हैं) के साथ क्लोन करते हैं।
नाइट्रोडिस्ट

43
मेरी .git/configपसंद अधिक थी, url=https://github.com/mynickname/my_repo.gitलेकिन मैंने इसे भी बदल दिया url=ssh://git@github.com/mynickname/my_repo.gitऔर यह चाल
चली

12
आप git remote set-urlकमांड के साथ रेपो यूआरएल बदल सकते हैं । नीचे मेरा जवाब देखें।
fetsh

7
या कमांड लाइन से इसे git remote set-url <name> git@github.com:<username>/<repo>.git
बदलकर

42
एक गैर ssh समाधान की तलाश करने वालों के लिए, यहां कुछ अन्य उत्तरों की जांच करें। Https url में अपना उपयोगकर्ता नाम जोड़ने से काम करने लगता है। (चेंज कॉन्फ़िगर url ताकि https: // @ github.com / ... UNAME@github.com / ... है )
साइरस

431

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

git remote set-url origin https://yourusername@github.com/user/repo.git

फिर आपसे प्रयास करने के लिए पासवर्ड मांगा जाएगा git push

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

https://youruser:password@github.com/user/repo.git

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


12
SSH काम पर अवरुद्ध है, इसलिए मुझे HTTPS का उपयोग करना होगा। उपयोगकर्ता नाम जोड़ना मेरे मुद्दों को हल करता है।
डेविड पोले

32
यह स्वीकृत उत्तर होना चाहिए। जब कोई कमांड लाइन इंटरफ़ेस होता है, तो मैन्युअल रूप से एक कॉन्फ़िग फ़ाइल को संपादित करने का कोई कारण नहीं।
स्टीव बेनेट

4
इसके अलावा, मेरे लिए, इस तरह ( उपयोगकर्ता नाम @ github ... ) ने पासवर्ड के लिए पूछा और काम किया, जबकि ssh: // git @ github ... सार्वजनिक कुंजी की अपेक्षा करने में विफल रहा।
स्टीव बेनेट

1
काम करता है और स्वीकृत उत्तर होना चाहिए! विशेष रूप से ऐसे वातावरण में जिसमें ssh काम नहीं करता है, यह जाने का रास्ता है। धन्यवाद!
एंड्रियास्क

3
@ यह एक प्रमाणीकरण प्रारूप है। आप सुरक्षित नहींhttps://youruser:password@github.com/user/repo.git होने के बावजूद भी अपना पासवर्ड सेट कर सकते हैं
थियागो मैसेडू

113

सीन के जवाब के लिए एक छोटा सा जोड़ ।

.git/configफ़ाइल को मैन्युअल रूप से संपादित करने के बजाय , आप git remote set-urlकमांड का उपयोग कर सकते हैं ।

आपके मामले में यह होना चाहिए:

git remote set-url origin ssh://git@github.com/derekerdmann/lunch_call.git

मुझे यह आसान और साफ-सुथरा लगता है, डॉट-फाइलों के साथ गड़बड़ करने की तुलना में।


मुझे नहीं पता कि क्या यह सिर्फ एक पुरानी पोस्ट है और git बदल गया है, लेकिन आज की समस्या को ठीक करने के लिए मुझे git remote set-url origin ssh://git@github.com:derekerdmann/lunch_call.gitgithub.com और रेपो नाम के बीच एक कॉलन के साथ उपयोग करना था
केविनएल

56

.git/configअपनी रेपो निर्देशिका के तहत फ़ाइल संपादित करें

url=अनुभाग के तहत प्रविष्टि का पता लगाएं[remote "origin"]

यह से बदले url=https://github.com/rootux/ms-Dropdown.gitके लिए https://USERNAME@github.com/rootux/ms-Dropdown.git

USERNAMEआपका गीथूब उपयोगकर्ता नाम कहां है


यह जवाब मेरी समस्या पर लागू नहीं हुआ। मेरा url .git/config` github.com/myrepo/subproject 'पर सेट है ।
किलोजूल

Android स्टूडियो के साथ यह समस्या थी। ठीक काम करता है।
AndroidDev 15'16

46

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

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

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

आशा है कि किसी और को एक ही मुद्दा होने में मदद करता है ...


1
लेकिन क्यों? मुझे अतीत में ऐसा नहीं करना था। क्या एक प्रमाण पत्र समाप्त हो गया, या कुछ और?
तुफिर

मुझे यकीन नहीं है, मैं एक विशेषज्ञ नहीं हूं, बस इतना ही मुझे अपने मामले में काम करने के लिए मिला :)
BMB

वही @Thufir मुझे नहीं पता कि यह अचानक क्यों काम किया।
निक मैनिंग

मैं ब्राउज़र पर अपने उपयोगकर्ता नाम और पासवर्ड के साथ ठीक लॉग ऑन करता हूं। लेकिन जब मैं कोशिश करता git pushहूं कि मुझे au और p के लिए संकेत दिया जाता है और परिणाम की अनुमति से इनकार किया जाता है .... क्या आप जानते हैं कि मैं क्या याद कर रहा हूं?
उमर

26

मैक ओएस एक्स पर समान त्रुटि और संकल्प।

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

$ git push -u origin master

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

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

यह तय करना चाहिए user.name या तो वैश्विक या वर्तमान रेपो के लिए

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

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

मैंने इसे पासवर्ड अनुभाग के तहत किचेन एक्सेस ऐप से GitHub से जुड़े OLDUSER को हटाकर ठीक किया । फिर पुश कमांड सफल हो गया।

$ git push -u origin master

संदर्भ


किचेन एक्सेस ऐप से OLDUSER हटाना मेरे लिए काम किया
अगस्तो ट्रिस्टे

1
मुझे वही त्रुटि मिली, लेकिन एक अलग लेकिन संबंधित कारण के लिए जिसे एक अलग समाधान की आवश्यकता थी। मैं एक रेपो पर धकेलने की कोशिश कर रहा था, जहाँ मेरी पहुंच नहीं है (मैं सहयोगी नहीं हूं)। यह मेरी जानकारी के अभाव के कारण अधिक था कि मैं कैसे रेपो में योगदान नहीं कर सकता। मुझे लगा कि मैं बस एक नई शाखा बना सकता हूं और फिर एक पुल अनुरोध कर सकता हूं। ऐसा नहीं। मुझे सबसे पहले रेपो को कांटना है, कांटे पर अपने परिवर्तन करना है, फिर मेरे कांटे वाले रेपो से मूल रेपो के लिए एक पुल अनुरोध करना है। शायद मेरी ओर से एक गंभीर गलती है, लेकिन अगर मैं इसे कर सकता हूं, तो मुझे यकीन है कि अन्य n00bs हो सकते हैं। :)
नियो

23

यदि आप विंडोज़ का उपयोग कर रहे हैं, तो कभी-कभी ऐसा हो सकता है क्योंकि विंडोज़ अपने स्वयं के भंडारण में बाहरी रेपो (हमारे मामले में गिटब) के लिए क्रेडेंशियल्स संग्रहीत करता है। और जिन साख को बचाया है, वे उन लोगों से अलग हो सकते हैं जिनकी आपको अभी आवश्यकता है।

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

तो इस समस्या से बचने के लिए, बस इस स्टोरेज में जीथब को ढूंढें और सहेजे गए क्रेडेंशियल्स को हटा दें। इसके बाद, गिट पुश करते समय आपकी साख का अनुरोध करेंगे और आपको धक्का देने की अनुमति देंगे।


"आपको control panel > user accounts > credential manager > Windows credentials > Generic credentialsइस पोस्ट के विवरणों के तहत विंडोज़ क्रेडेंशियल मैनेजर की जाँच करनी होगी और गिथब एंट्री को हटाना होगा ": stackoverflow.com/a/37450495
मिगुएल

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

1
तुमने मेरी जान बचाई!
राइट टूभुवन

1
मैंने एक महीने से अधिक समय तक इस समस्या का सामना किया है धन्यवाद
सैमसन नाज़ुकी

1
प्रतिभा। बहुत बहुत धन्यवाद
विनोद कुमार

18

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

git remote set-url origin https://username@github.com/user/repo.git

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


1
अच्छी नौकरी। उपयोगकर्ता सेट करें!
मार्लोनप्या

1
यह समाधान CentOS 6.10 x86 में git v1.7 के साथ मदद करता है। मैं उम्मीद कर रहा था कि पासवर्ड प्रॉम्प्ट (एसएसएच कुंजी के बजाय) दिखाने के लिए है, और उसने ( दूरस्थ यूआरएल में <username>@पहले से लिखकर github.com) किया। धन्यवाद!
वल्केन रेवेन

17

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



11

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


1
मुझे और एक मित्र को एक ही समस्या हो रही है। रेपो मेरा है, और वह धक्का नहीं दे सकता। हम इसे कैसे ठीक करते हैं?
गिब्सन

कैसे persmisson पाने के लिए
Bawantha

9

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

[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

^ यह (या नीचे इसका कोई भी एक संस्करण)
ऑस्टिन फ्रांस

Github.com से पहले उपयोगकर्ता नाम जोड़ना मेरे लिए इसे ठीक कर दिया।
शेन

आपका स्वागत है @ əədəəlÅhmåd। उत्तर को आगे बढ़ाकर प्रयास का समर्थन करें ताकि कई अन्य लोग सराहना कर सकें।
लैरीटेक

8

पता लगा लिया। मैंने HTTPS पर क्लोन किया। मेरी सार्वजनिक SSH कुंजियों को सेट करना, SSH पर क्लोन करना और SSH पर जोर देना इसे निर्धारित करता है।


हम्म ... लेकिन क्या जब आप कुछ भी उपयोग नहीं कर सकते हैं, लेकिन उदाहरण के लिए, कॉर्प फ़ायरवॉल के कारण,? ... जीथब ब्लॉग के अनुसार, https का उपयोग केवल उस उद्देश्य के लिए गिटबब में जोड़ा गया था?
14

1
मैं वास्तव में नहीं जानता। मैं हमेशा अब SSH पर क्लोन करता हूं।
माइक

सिर्फ पोस्टेरिटी के लिए (मैंने टाइमस्टैम्प पर ध्यान दिया), फिल्मफेल की टिप्पणी के संबंध में: ऊपर सूचीबद्ध मेरे उत्तर को देखें। मेरे पास आपके स्कूल में एक ही प्रतिबंध है, और पाया कि मैं टर्मिनल प्रॉम्प्ट में गलत पासवर्ड / पासफ़्रेज़ की आपूर्ति कर रहा था। आशा है कि यह उसी मुद्दे के साथ किसी अन्य की मदद करता है।
बीएमबी

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

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


धन्यवाद! वास्तव में मददगार!
सेलफिश009


7

यह एक अस्थायी निर्धारण के लिए करें

git push -u https://username:password@github.com/username/repo_name.git master


सरल और काम करता है
बावनथ

6

मुझे एक ही त्रुटि का सामना करना पड़ा और कारण बेवकूफी थी - मेरे पास चयनित भंडार के लिए प्रतिबद्ध विशेषाधिकार नहीं थे। मुझे नहीं पता था कि मुझे करना है

  1. कांटा चयनित परियोजना पहले
  2. स्थानीय रूप से क्लोन रिपॉजिटरी
  3. स्थानीय रूप से मेरे परिवर्तन
  4. मेरे github क्लोन में परिवर्तन बदलें
  5. अनुरोध पुल अपस्ट्रीम के लिए अनुरोध

जैसा कि https://help.github.com/categories/63/articles में वर्णित है


1
बेवकूफ नहीं, सार्वजनिक रिपॉजिटरी में अधिकांश पहली बार योगदान करने वालों के लिए यह सही उत्तर है।
14

5

उन होने की अनुमति के लिए इनकार कर दिया 403 का उपयोग करते समय त्रुटि ssh (के अनुसार जिओ ) या http यूआरएल इन आदेशों की कोशिश

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

>git config --unset-all credential.helper

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

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

अब हर बार Git लॉगिन और पासवर्ड मांगेगा। के माध्यम से उन्हें बचाओ git config --global credential.helper store
कूलमाइंड

4

इसे बदलो

url=https://MichaelDrogalis@github.com/derekerdmann/lunch_call.git 

सेवा

url=ssh://git@github.com/derekerdmann/lunch_call.git

यह काम करता हैं!

"@" से पहले "गिट" मत भूलना।


यह मेरे लिए काम किया (प्रॉक्सी के पीछे RStudio के साथ CentOS सर्वर का उपयोग करके)। पहले प्रॉक्सी सेट करें: git config --global http.proxy http://proxyUsername:proxyPassword@proxy.server.com:portफिर git remote set-url originएड्रेस को स्विच करने के लिए कमांड का उपयोग करें।
अलेक्जेंड्रे

3

किसी के लिए उत्सुक, मेरी मैक मशीन बनाम ल्यूसिड वीएम जीआईटी 1.7.6 बनाम 1.7.0.4 पर चली गई, और ठीक उसी रेपो को मेरे मैक (नए गिट) से धोया गया, लेकिन वीएम नहीं

समान कर्ल संस्करण। शायद कुछ पुराने git संस्करण https पुश का समर्थन नहीं करते हैं?


हाँ, https पुश करने के लिए यहाँ काम करता है (यहां तक ​​कि पासवर्ड के साथ प्रॉक्सी के माध्यम से)। मैं git 1.7.3 का उपयोग करता हूं। मेरे लिए, यह पहले विफल हो गया क्योंकि मैंने गलत पासवर्ड टाइप किया।
गुफ्तगू

9
यह मेरे लिए 1.7.1 git के साथ काम करता है, लेकिन एक बात है जिस पर आपको भी ध्यान देना होगा (और जो मैंने अपने पहले प्रयास में याद किया था): HTTPS-URL में उपयोगकर्ता का नाम दें,url=https://username@github.com/username/repo.git
lwho

3

URL के भाग के रूप में उपयोगकर्ता नाम जोड़ें और यह त्रुटि इसलिए होती है क्योंकि git कमांड https के बजाय http को मार रहा है। इसलिए url सेट करें

git remote set-url origin https://<username>@github.com/Path_to_repo.git

जिसके बाद आपको पासवर्ड के लिए कहा जाएगा:


3

मेरे लिए क्या काम किया:

मेरा रेपो एक कांटा था और अभी भी माता-पिता के रेपो से जुड़ा हुआ है।

git remote -v

आपको बताएगा कि यह आपका रेपो है या नहीं।

git remote set-url origin https://github.com/USERNAME/OTHERREPOSITORY.git

आपको इसे अपने रेपो में फिर से कॉन्फ़िगर करने की अनुमति देता है और फिर आपको धक्का देने की अनुमति देता है।


3

उपरोक्त किसी भी उत्तर ने मेरे enterpriseGitHub खाते के लिए काम नहीं किया । Ssh कुंजी जनरेशन तरीके से पुश करने के लिए इन चरणों का पालन करें।

अपने git खाते पर जाकर एक रेपो बनाएं।

Ssh कुंजी उत्पन्न करें:

ssh-keygen -t rsa -C "your_email@example.com"

फ़ाइल की सामग्री को कॉपी करें ~ / .shsh / id_rsa.pub अपने SSH कुंजी को अपने GitHub खाता सेटिंग्स में। टेस्ट SSH कुंजी:

ssh -T git@github.com
clone the repo:
git clone git://github.com/username/your-repository

अब अपने git क्लोन फ़ोल्डर में cd करें और करें:

git remote set-url origin git@github.com:username/your-repository.git

अब किसी फ़ाइल को संपादित करने का प्रयास करें (README को आजमाएँ) और फिर करें:

git add -A
git commit -am "my update msg"
git push -u origin master

अद्यतन: नया git संस्करण नए रेपो को बनाते समय कोई फ़ाइल नहीं होने की अनुशंसा करता है। इसलिए एक खाली रेपो बनाएं।


2

मुझे इस समस्या के अपने रूपांतर का पता चला।

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

git config --global user.email "your_github_email_@email.com"

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

मेरे लिए काम नहीं करता है। विन्यास सेट किया गया है, github.com का उपयोग करें .. इसमें कोई '@' नहीं है
2:13 पर

2

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

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

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


1

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


1

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


1

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


1

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

git remote rm origin
git remote add origin git@github.com:username/repoName.git

तो इसे के साथ की जाँच करें git remote -v


1

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

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