828 Stimmen

Pushing zu Git mit Fehlercode 403 fatal: HTTP-Anfrage fehlgeschlagen

Ich war in der Lage, eine Kopie dieses Repos über HTTPS authentifiziert zu klonen. Ich habe einige Änderungen vorgenommen und möchte sie wieder auf den GitHub-Server übertragen. Mit Cygwin auf Windows 7 x64.

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

Richten Sie außerdem den ausführlichen Modus ein. Ich bin immer noch ziemlich verblüfft.

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

Dies sind die Versionen von git und curl, die ich habe:

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

4 Stimmen

Sehen Sie sich den Kommentar an, der als Antwort veröffentlicht werden sollte. Ich habe es mit 1.7.1 zum Laufen gebracht, hatte auch das Problem mit der fehlenden Benutzer/Passwort-Eingabeaufforderung. Dank an stackoverflow.com/a/9575906/805284 ...

3 Stimmen

Prüfen, ob der Benutzer Lese-/Schreibzugriff auf das Repository hat

45 Stimmen

Fügen Sie in Zukunft nicht mehr "Authorization: Basic <stuff>" ein, wenn Sie Beispiele für http-Header anzeigen. Es ist einfach, das mit base64 zu dekodieren und dein Passwort zu bekommen. @mike: Wenn Sie Ihr Github-Passwort nicht geändert haben, seit Sie diese Frage gepostet haben, würde ich Ihnen empfehlen, dies zu tun.

0voto

Mr Kyaing Punkte 41

Dieser 403-Fehler (Zugriff verweigert) kann auftreten, wenn Sie den Einladungslink in Ihrer E-Mail oder Ihrem Github-Repositionskonto nicht akzeptiert haben.

Nachdem Sie auf den Einladungslink geklickt haben, können Sie mit den folgenden Befehlen ein entferntes Repository hinzufügen:

git remote add <name> <url>
git push —set-upstream <repo_name> master

Beispiel:

git remote add ProgrammingFoundationExam https://github.com/itprowhoami/ProgrammingFoundationExam.git
git push --set-upstream ProgrammingFoundationExam master

0voto

Ruan Punkte 3233

Wenn alles andere versagt. Stellen Sie nur sicher, dass Sie Ihr Projekt nicht archiviert haben. Das war mein Problem, das die ganze Lösung in einen Nur-Lese-Modus versetzt.

0voto

Mohammed Fathi Punkte 951

Dies ist mir passiert, weil das Repository wurde deaktiviert (ein Repository kann vom Eigentümer deaktiviert werden oder Github kann alle privaten Repositories eines Accounts deaktivieren, wenn der Account seine Rechnung nicht bezahlt).

Wenden Sie sich daher an den Eigentümer des Repositorys und informieren Sie ihn, dass das Repository deaktiviert ist.

0voto

Ich weiß nicht, ob das schon einmal jemand erwähnt hat oder nicht.

Ich hatte dieses Problem mit Bitbucket, und ich habe eine Sache bemerkt. Wenn Sie dies haben, zum Beispiel,

git push https://myrepo:myRepoPassword@bitbucket.org/myrepo/myrepo.git --all

Beachten Sie das @ direkt nach dem Passwort. Wenn Ihr Passwort mit einem @ endet, haben Sie zwei @@ anstelle von einem. In meinem Fall war es das Passwort, das das Problem verursachte.

0voto

Mahesh Jamdade Punkte 11281

Vergewissern Sie sich, dass Sie genügend Rechte haben, um das Repository zu pushen, wenn Sie dies tun t

git config --global user.email youremail@domain.
git config --global user.name username
git config --global user.password yourpassword

Ich hoffe, das hilft jemandem

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X