J'ai suivi les 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 [email protected]:tirenga/tirenga.git
git Push Origin master
Mais je reçois cette erreur:
Autorisation refusée (publickey). fatal: l'extrémité distante a raccroché de manière inattendue
Pour moi, le problème était l'exécution du clone via Sudo.
Si vous clonez dans un répertoire où vous avez l'autorisation de l'utilisateur (/ home/user/git), tout se passera bien.
(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 la configuration d’une clé SSH: https://help.github.com/articles/generating-ssh-keys
Je devais ajouter 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 de Windows et la page ci-dessous m'aident à résoudre ce problème.
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'ajouter à SSH à l'aide de:
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 le nom du référentiel:
git clone https://github.com/{user name}/{repo name}
dans Ubuntu cela fonctionne parfaitement.
J'ai eu une solution après une longue période de tutoriels.
J'ai suivi le didacticiel github sur ce lien -> https://help.github.com/articles/error-permission-denied-publickey et j'ai été en mesure de me connecter à chaque étape. Mais quand j'essayais de git le maître d'origine de Push -u , j'ai eu cette erreur:
Autorisation refusée (publickey). fatal: Impossible de lire à partir du référentiel distant.
Assurez-vous d'avoir les droits d'accès corrects
C'est comme ça que je l'ai corrigé !! Allez dans le répertoire du projet en utilisant le Terminal et jetez-y un œil
$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 autre chose que [email protected] , ouvrez le fichier de configuration dans le répertoire git en tapant la commande suivante:
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, j'ai dû configurer la clé publique pour un autre utilisateur, car j'en avais déjà une 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 pouvais cloner et aller chercher mais je ne pouvais pas pousser. Finalement, j'ai compris que le problème était dans le url
de mon .git/config
, il devrait être:
[email protected]:<username>/<project>
(pas ssh://github.com/<username>/<project>.git
ou https://github.com/<username>/<project>.git
).
Étant donné qu'aucune des réponses ici ne fonctionnait 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: clé ssh-dss ignorée /c/Users/USER/.ssh/id_dsa pour ne pas utiliser PubkeyAcceptedKeyTypes
La solution consistait à ajouter 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 existants et une fois que cela a été fait, git peut maintenant ssh dans Bitbucket sans problème.
Mon problème était que j'essayais de donner à ma clé ssh un NOM SPÉCIFIQUE chaque fois que je saisissais 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 le id_rsa.pub
, qui est votre clé publique. Ensuite, j'ai copié et enregistré le code de id_rsa.pub
dans les paramètres de mon compte GitHub, et c'était tout. Problème résolu.
Un bon si vous avez installé git sur votre ordinateur:
L'ajout d'une clé publique est la solution.Pour générer des clés ssh: https://help.github.com/articles/generating-ssh-keys contient des instructions pas à pas.
Toutefois, le problème peut persister si la clé n'est pas générée correctement. J'ai aussi trouvé ce lien utile: https://help.github.com/articles/error-permission-denied-publickey
Dans mon cas, le problème était que je générais 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, lorsque vous essayez d'utiliser une commande telle que 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é et les commandes git. Ou pour les autres, quand ils n'ont pas besoin de Sudo, ne l'utilisez pas dans les 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 de Git Clone sous Windows. Suivre les constatations aide à résoudre mon problème:
De plus, je pense qu’il ya un moyen de "dire" à git d’utiliser le dossier par défaut .ssh dans le dossier d’accueil, mais il reste à déterminer comment.
Si vous utilisez une machine Linux, vérifiez,
La génération de nouvelles clés SSH et leur ajout à mon compte Github ont résolu mon problème. Vous pouvez regarder dans cette page pour plus de détails. GitHelp .
Utiliser Ubuntu sur Windows Store
sous-système windows pour linux
, votre git Push fonctionnera sur différents comptes.
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
Vous pouvez essayer de changer votre type de connexion pour passer de ssh à https.
nano project_path/.git/config
[email protected]:username/repository.git
par https://[email protected]/username/repository_name.git
ctrl
+ o
Après cela, vous pouvez essayer git pull
sans publickey