J'ai pu cloner une copie de ce dépôt sur HTTPS authentifié. J'ai fait quelques commits et je veux repousser vers le serveur GitHub. Utilisation de Cygwin sur Windows 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
Configurez-le également avec le mode verbeux. Je suis toujours assez déconcerté.
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
Ce sont les versions de git et curl que j'ai:
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
Réponses:
Je viens d'avoir le même problème et j'ai juste trouvé la cause.
Github ne prend en charge que la manière ssh de lire et d'écrire le dépôt, bien que la méthode https affiche également `` Lecture et écriture ''.
Vous devez donc changer votre configuration de dépôt sur votre PC en manière ssh:
.git/config
fichier sous votre répertoire repourl=
entrée sous la section[remote "origin"]
url=https://[email protected]/derekerdmann/lunch_call.git
àurl=ssh://[email protected]/derekerdmann/lunch_call.git
. c'est-à-dire, changez tous les textes avant le@
symbole enssh://git
config
fichier et quittez. maintenant, vous pouvez utilisergit push origin master
pour synchroniser votre dépôt sur GitHubla source
.git/config
ressemblait plusurl=https://github.com/mynickname/my_repo.git
mais je l'ai aussi changéurl=ssh://[email protected]/mynickname/my_repo.git
et ça a fait l'affairegit remote set-url
commande. Voir ma réponse ci-dessous.git remote set-url <name> [email protected]:<username>/<repo>.git
Pour pouvoir vous connecter définitivement à l'aide du
https
protocole, vous devez d'abord définir vos informations d'authentification sur l' URI distant git :Un mot de passe vous sera alors demandé lors de la tentative
git push
.En fait, c'est sur le format d'authentification http. Vous pouvez également définir un mot de passe:
Vous devez savoir que si vous faites cela, votre mot de passe github sera stocké en texte brut dans votre répertoire .git, ce qui n'est évidemment pas souhaitable.
la source
https://youruser:[email protected]/user/repo.git
malgré le fait qu'il n'est pas sécuriséUn petit ajout à la réponse de Sean .
Au lieu de modifier le
.git/config
fichier manuellement, vous pouvez utiliser lagit remote set-url
commande.Dans votre cas, ce devrait être:
Je trouve cela plus facile et plus propre que de jouer avec des fichiers dot.
la source
git remote set-url origin ssh://[email protected]:derekerdmann/lunch_call.git
avec deux points entre github.com et le nom duModifier le
.git/config
fichier sous votre répertoire repoRechercher une
url=
entrée dans la section[remote "origin"]
Changez - le de
url=https://github.com/rootux/ms-Dropdown.git
lahttps://[email protected]/rootux/ms-Dropdown.git
où
USERNAME
est votre nom d'utilisateur githubla source
.git/config
est définie sur ` github.com/myrepo/subproject ' .Les autres réponses qui suggèrent de passer à SSH manquent en quelque sorte le point. HTTPS est pris en charge, mais vous devez vous connecter avec votre mot de passe GITHUB, pas votre mot de passe SSH (qui m'a donné exactement la même erreur).
J'avais le même problème, mais en veillant à utiliser mon mot de passe GitHub réel à l'invite du mot de passe du terminal, la solution a été corrigée sans modification de la configuration ou recours à SSH.
La raison pour laquelle il est important de le noter, c'est que de nombreuses institutions publiques (comme mon école) bloqueront SSH, mais autoriseront HTTPS (c'est la seule raison pour laquelle j'ai commencé à cloner sur HTTPS en premier lieu).
J'espère que cela aide toute personne ayant le même problème ...
la source
git push
je suis invité pour au et p et le résultat est une autorisation refusée .... Savez-vous ce qui me manque?Même erreur et résolution sur Mac OS X.
Tout fonctionnait bien jusqu'à ce que je crée un nouveau compte sur GitHub et essaye de pousser
Et j'ai l'erreur:
à distance: autorisation à NEWUSER / NEWREPO.git refusée à OLDUSER. fatal: impossible d'accéder à ' https://github.com/NEWUSER/NEWREPO.git/ ': l'URL demandée a renvoyé l'erreur: 403
Il aurait dû être corrigé en définissant le nom d'utilisateur pour le dépôt global ou actuel
Mais ce n'était pas le cas.
Je l'ai corrigé en supprimant le OLDUSER associé à GitHub de l'application Keychain Access dans la section Mots de passe. Ensuite, la commande push a réussi.
référence
la source
Si vous utilisez Windows, cela peut parfois se produire car Windows stocke les informations d'identification du dépôt externe (dans notre cas, github) dans son propre stockage. Et les informations d'identification qui y ont été enregistrées peuvent être différentes de celles dont vous avez besoin en ce moment.
Donc, pour éviter ce problème, recherchez simplement github dans ce stockage et supprimez les informations d'identification enregistrées. Après cela, tout en poussant git demandera vos informations d'identification et vous permettra de pousser.
la source
control panel > user accounts > credential manager > Windows credentials > Generic credentials
" détails de cet article: stackoverflow.com/a/37450495Cela fonctionne pour moi -:
J'espère que cela aide
la source
<username>@
avantgithub.com
dans l'URL distante). Je vous remercie!Je pense que @deepwaters a obtenu la bonne réponse pour les anciennes versions. L'URL HTTPS doit avoir le nom d'utilisateur. J'avais git 1.7.0.4 et
git push origin master
ne demandais même pas de mot de passe avant de l'avoir ajouté.la source
Améliorez votre git. GitHub a répondu à cette question sur https://help.github.com/articles/error-the-requested-url-returned-error-403 .
la source
Un code 403 est "Interdit". Le serveur a vu votre demande et l'a refusée. Avez-vous la permission de pousser vers ce référentiel?
la source
En fait, j'avais une solution très simple à cela. Tout ce que j'ai fait a été de modifier le fichier de configuration git différemment après le clonage du référentiel. L'URL d'origine distante est ce que vous devez modifier dans votre fichier de configuration par défaut . Il devrait ressembler à celui ci-dessous
la source
Deviner. J'ai cloné sur HTTPS. La configuration de mes clés SSH publiques, le clonage sur SSH et le fait de pousser sur SSH l'ont corrigé.
la source
Après cela, notre "Push to Git" a bien fonctionné.
la source
Ajoutez simplement votre nom d'utilisateur dans l'URL comme ceci: https: //[email protected]/islam9/bootstrap-rtl
veuillez vérifier: http://islamkhalil.wordpress.com/2012/12/06/github-error-pushing-to-git-returning-error-code-403-fatal/
la source
Faites ceci pour une correction temporaire
git push -u https://username:[email protected]/username/repo_name.git master
la source
J'ai fait face à la même erreur et la cause était stupide - je n'avais pas de privilèges pour valider le référentiel sélectionné. Je ne savais pas que je devais
comme décrit dans https://help.github.com/categories/63/articles
la source
Pour ceux dont la permission a refusé l' erreur 403 lors de l'utilisation de ssh (selon Xiao ) ou des URL http, essayez ces commandes
avec des droits d'administrateur
la source
git config --global credential.helper store
.changer de
à
Ça marche!
N'oubliez pas le "git" devant le "@".
la source
git config --global http.proxy http://proxyUsername:[email protected]:port
utilisez ensuite la commandegit remote set-url origin
pour changer l'adresse.Pour toute personne curieuse, ma machine mac vs lucid vm a couru git 1.7.6 vs 1.7.0.4, et le même dépôt a été poussé depuis mon mac (git plus récent) mais pas la VM
Même version bouclée. Peut-être que certaines anciennes versions de git ne prennent pas en charge les push https?
la source
url=https://[email protected]/username/repo.git
Ajoutez le nom d'utilisateur dans l'URL et cette erreur se produit car la commande git frappe http au lieu de https. Alors définissez l'url
Après quoi, un mot de passe vous sera demandé:
la source
Ce qui a fonctionné pour moi:
Mon repo était une fourchette et toujours lié au repo des parents.
Vous dira si c'est votre repo ou non.
Vous permet de le reconfigurer dans votre référentiel puis de vous permettre de pousser.
la source
Aucune des réponses ci-dessus n'a fonctionné pour mon
enterprise
compte GitHub. Suivez ces étapes pour pousser via la méthode de génération de clé ssh.Créez un dépôt en visitant votre compte git.
Générez la clé ssh:
Copiez le contenu du fichier ~ / .ssh / id_rsa.pub sur vos clés SSH dans les paramètres de votre compte GitHub. Tester la clé SSH:
Maintenant, cd dans votre dossier git clone et faites:
Maintenant, essayez de modifier un fichier (essayez le fichier README), puis procédez comme suit:
Mise à jour: la nouvelle version de git semble recommander de ne pas avoir de fichier pendant la création du nouveau dépôt. Faites donc un repo vierge.
la source
J'ai compris ma propre variante de ce problème.
Le problème n'était pas de changer le protocole de https à ssl, mais de définir le nom d'utilisateur et l'e-mail Github global! (J'essayais de pousser vers un référentiel privé.
la source
Github a une page dédiée au dépannage de cette erreur:
https://help.github.com/articles/https-cloning-errors
Dans mon cas, il s'est avéré que l'utilisation d'une nouvelle version de git (1.8.5.2) a résolu ce problème.
la source
J'ai eu ce problème en ce moment et il s'est avéré que mon fichier serveur /etc/resolver.conf avait une mauvaise adresse IP. Pourrait aider les autres.
la source
Cela m'est arrivé parce que mon collègue a accidentellement désactivé le référentiel à partir duquel ce référentiel a été créé. Je pourrais peut-être vérifier que le dépôt git (hub) d'origine existe toujours.
la source
Ce pourrait être un problème de comptabilité. Le compte Github du propriétaire du repo en amont (privé) peut ne pas être financier. J'ai vu cela où la carte de crédit du client a expiré.
la source
ce qui a fonctionné pour moi passe de http à ssh:
puis vérifiez avec
git remote -v
la source
J'ai eu le même problème. Mon cas était: j'avais initialisé git repo localement avant de le créer sur github, puis j'ai essayé d'ajouter une branche distante. J'ai résolu mon problème en changeant l'ordre des actions: créé un dépôt sur le site github, puis l'initié localement. Mais ce n'est pas le cas pour eux qui aiment tout faire en ligne de commande comme moi.
la source