GitHub: autorisation refusée (publickey). fatal: l’extrémité distante a raccroché de manière inattendue

J’ai suivi ces instructions ci-dessous pour télécharger un projet.

Configuration globale:

Download and install Git git config --global user.name "Your Name" git config --global user.email [email protected] Add your public key Next steps: mkdir tirengarfio cd tirengarfio git init touch README git add README git commit -m 'first commit' git remote add origin git@github.com:tirenga/tirenga.git git push origin master 

Mais j’ai cette erreur:

Permission refusée (publickey). fatal: l’extrémité distante a raccroché de manière inattendue

Pour moi, le problème était l’exécution de clone via sudo.

Si vous clonez dans un répertoire où vous avez l’autorisation de l’utilisateur (/ home / user / git), cela fonctionnera correctement.

(Explication: L’exécution d’une commande en tant que superutilisateur ne fonctionnera pas avec la même clé publique que l’exécution d’une commande en tant qu’utilisateur. Par conséquent, Github a refusé la connexion.)

Cette solution nécessite une clé SSH déjà configurée: https://help.github.com/articles/generating-ssh-keys

J’ai dû append ma clé publique à github. https://help.github.com/articles/generating-ssh-keys

Oui, c’est un problème de clé publique. Je suis un utilisateur Windows et la page ci-dessous m’aide à résoudre ce problème.

http://help.github.com/win-set-up-git/

plus précisément ce lien devrait être utile

https://help.github.com/articles/error-permission-denied-publickey

Après avoir créé la paire de clés RSA, vous devez l’append à SSH en utilisant:

 ssh-add ~/.ssh/id_rsa 

ou partout où vous avez créé votre paire de clés rsa.

Tapez la commande suivante en utilisant votre nom d’utilisateur et nom de référentiel:

 git clone https://github.com/{user name}/{repo name} 

dans Ubuntu cela fonctionne parfaitement.

J’ai eu une solution après de longues années dans des tutoriels.

J’ai suivi le tutoriel github sur ce lien -> https://help.github.com/articles/error-permission-denied-publickey et j’ai pu me connecter à chaque étape. Mais quand j’essayais de lancer push -u origin master, j’ai cette erreur:

Permission refusée (publickey). fatal: Impossible de lire à partir du référentiel distant.

Assurez-vous d’avoir les droits d’access appropriés

C’est comme ça que je l’ai réparé !! Allez dans le répertoire du projet en utilisant le terminal et vérifiez-le

 $git remote -v 

Vous obtiendrez quelque chose comme ceci:

 origin ssh://[email protected]/yourGithubUserName/yourRepo.git (fetch) origin ssh://[email protected]/yourGithubUserName/yourRepo.git (push) 

Si vous utilisez quelque chose de différent, alors [email protected] , ouvrez le fichier de configuration sur le répertoire git en tapant la commande:

 vi .git/config 

Et configurer la ligne

 [remote "origin"] url = ssh://[email protected]/yourGithubUserName/yourRepo.git fetch = +refs/heads/*:refs/remotes/origin/ 

Dans mon cas, je devais configurer la clé publique pour un autre utilisateur, car j’en avais déjà un pour mon utilisateur principal. Une fois que j’ai changé d’utilisateur et exécuté les commandes dans le lien ci-dessus, j’ai pu effectuer la configuration de mon serveur de test sans problème.

J’ai eu ce problème, mais aucune des solutions ci-dessus n’a fonctionné. Je pourrais cloner et aller chercher mais je ne pouvais pas pousser. Finalement, j’ai compris que le problème était dans l’ url de mon .git/config , il devrait être:

 [email protected]:/ 

(pas ssh://github.com//.git ou https://github.com//.git ).

Étant donné qu’aucune des réponses ici n’a fonctionné pour moi, j’ai finalement retrouvé mon problème de connexion à Bitbucket (ou Github, peu importe dans ce cas) avec ssh -vT [email protected].

Dans mon cas, l’échec était dû à l’utilisation d’une clé DSA au lieu de RSA, et apparemment mon client SSH ne le permet plus.

debug1: Ignorer la clé ssh-dss /c/Users/USER/.ssh/id_dsa pour ne pas le faire dans PubkeyAcceptedKeyTypes

La solution était d’append ceci à .ssh / config:

 Host * PubkeyAcceptedKeyTypes +ssh-dss 

Cela ajoute élégamment le type de clé ssh-dss à tous les types de clés publiques acceptées et après cela, git peut désormais ssh dans Bitbucket sans aucun problème.

Mon problème était que j’essayais de donner à ma clé ssh un NOM SPÉCIFIQUE chaque fois que je saisis ssh-keygen sur mon terminal mac.

J’ai résolu le problème en laissant simplement le nom que “ssh-keygen” génère = id_rsa . Vous vous retrouverez avec 2 clés dans votre dossier .ssh sur un mac, id_rsa , qui est votre clé privée, et id_rsa.pub , qui est votre clé publique. Ensuite, j’ai copié et enregistré le code d’ id_rsa.pub dans les parameters de mon compte GitHub, et c’était tout. Problème résolu.

Une bonne si vous avez installé git sur votre ordinateur:

http://help.github.com/mac-set-up-git/

L’ajout de clé publique est la solution.Pour générer des clés ssh: https://help.github.com/articles/generating-ssh-keys contient des instructions détaillées.

Cependant, le problème peut persister si la clé n’est pas générée correctement. J’ai également trouvé que ce lien était utile: https://help.github.com/articles/error-permission-denied-publickey

Dans mon cas, le problème était que je produisais la clé ssh sans utiliser sudo, mais lorsque j’utilisais les commandes git, je devais utiliser sudo. Ce commentaire dans le lien ci-dessus “Si vous générez des clés SSH sans sudo, alors lorsque vous essayez d’utiliser une commande comme sudo git push, vous n’utiliserez pas la clé SSH que vous avez générée.” m’a aidé.

Donc, la solution était que je devais utiliser sudo avec les commandes de génération de clés et les commandes git. Ou pour d’autres, quand ils n’ont pas besoin de sudo n’importe où, ne l’utilisez dans aucune des deux étapes. (génération de clé et commandes git).

J’ai rencontré un problème similaire lors de l’exécution de SSH ou Git Clone dans Windows. Les constatations suivantes aident à résoudre mon problème:

  • Lorsque vous exécutez «rhc setup» ou d’autres méthodes ssh pour générer la clé ssh, il créera le fichier de clé privée id_rsa dans le dossier .ssh de votre dossier personnel, la valeur par défaut étant C: \ User \ UserID.
  • Git pour Windows a son propre dossier .ssh dans son répertoire d’installation. Lorsque vous exécutez git / ssh, il recherchera le fichier de clé privée id_rsa dans ce dossier
  • Résoudre le problème en copiant id_rsa du dossier .ssh du dossier de base dans le dossier .ssh du répertoire d’installation de git.

En outre, je pense qu’il existe un moyen de «dire» à git d’utiliser le dossier par défaut .ssh dans le dossier de départ, mais qu’il rest à comprendre comment.

Pour moi, cela a fonctionné comme ceci:

Dans GitHub, j’ai changé le lien ssh en https , puis j’ai donné les commandes suivantes:

 $ git init $ git remote add origin https:... $ git add . $ git commit -m "first commit" $ git push origin master 

Utiliser Ubuntu sur Windows Store

sous-système Windows pour Linux

, votre git push fonctionnera sur différents comptes.

Si vous utilisez une machine Linux, vérifiez,

  • Est-ce que Openssh est installé
  • Si vous le faites, alors vous avez une clé publique existante, sinon vous devrez en générer une.
  • est votre clé publique ajoutée à votre compte github.

Générer de nouvelles clés SSH et les append à mon compte Github a résolu mon problème. Vous pouvez consulter cette page pour plus de détails. GitHelp .

Vous devez configurer les clés SSH.

Cette page GitHub explique comment générer des clés.

Si vous avez une clé existante, copiez $HOME/.ssh/id_rsa.pub et collez-le dans la page des parameters SSH de GitHub .

Un moyen rapide de résoudre ce problème si vous utilisez un Mac est de vous déconnecter de l’application OSX et de vous reconnecter.

Mon problème était que cela ne fonctionnait pas avec une phrase secrète sur ma clé privée.

J’espère que ça aide quelqu’un.

J’ai aussi ce problème aujourd’hui. La solution consiste à définir votre “clé ssh”. Cliquez sur l’URL ci-dessous, suivez les étapes, puis vous la déplacerez.

http://github.com/guides/providing-your-ssh-key

J’ai essayé les solutions mentionnées mais j’ai toujours échoué. J’ai trouvé la solution qui a finalement fonctionné pour moi ici : supprimer puis ré-append le lien distant

J’ai eu le même problème sur Windows. Je suis passé de SSH à HTTPS et j’ai exécuté un Git PUSH.

 git push -u origin master Username for 'https://github.com':  Password for : xxx 

Réussi! J’espère que cela t’aides.