183 votes

Impossible de pousser vers un dépôt Git sur Bitbucket

J'ai créé un nouveau référentiel et je rencontre une erreur étrange. J'ai déjà utilisé Git sur Bitbucket, mais je viens de reformater et maintenant je n'arrive pas à faire fonctionner Git. Après avoir effectué un commit, j'ai dû ajouter mon email et mon nom aux globaux, mais ensuite le commit s'est bien déroulé.

Lorsque j'essaie d'utiliser la commande

git push origin master

ça ne marche pas. Je reçois ce message :

$ git push origin master
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Je suis un peu perdue ici. Mon ami avec qui je partage ce référentiel y a accédé sans problème et y a poussé sans problème, mais je n'arrive pas à le faire fonctionner.

1voto

sstauross Points 357

J'utilise macOS et bien que j'aie configuré ma clé publique dans bitbucket, la fois suivante où j'ai essayé de pousser, j'ai eu le message suivant

accès au référentiel refusé.

fatal : Impossible de lire le référentiel distant.

Veuillez vous assurer que vous avez les bons droits d'accès et que le référentiel existe.

Ce que j'avais à faire était Étape 2. Ajoutez la clé à l'agent ssh comme décrit dans Guide de configuration des clés SSH de Bitbucket et surtout la 3ème étape :

(macOS uniquement) Pour que votre ordinateur se souvienne de votre mot de passe à chaque fois. redémarrage, ouvrez (ou créez) le fichier ~/.ssh/config et ajoutez ces lignes au fichier lignes au fichier :

Hôte *
UseKeychain oui

J'espère que cela aidera un utilisateur de Mac ayant le même problème.

1voto

Hector Points 21

Faites le ssh comme dans le tutoriel d'Atlassian et assurez-vous que la clé privée est collée dans le profil, et non dans le référentiel :)

0voto

shigazaru Points 153

J'avais ce problème et je pensais que j'étais folle. J'utilise SSH depuis 20 ans et git sur SSH depuis 2012... mais pourquoi ne pouvais-je pas récupérer mon dépôt bitbucket sur mon ordinateur personnel ?

J'ai deux comptes bitbucket et j'ai chargé 4 clés SSH dans mon agent. même si mon .ssh/config était configuré pour utiliser la bonne clé. lorsque ssh initialisait la connexion, il les utilisait dans l'ordre où elles étaient chargées dans l'agent. ainsi, j'étais connecté à mon compte bitbucket personnel.

puis obtenir une erreur interdite en essayant de récupérer le dépôt. C'est logique.

J'ai déchargé la clé de l'agent

ssh-add -d ~/.ssh/personal_rsa

puis je pourrais récupérer les dépôts.

... Plus tard, j'ai découvert que je pouvais le forcer à utiliser uniquement l'identité spécifiée.

 Host bitbucket.org-user2
     HostName bitbucket.org
     User git
     IdentityFile ~/.ssh/user2
     IdentitiesOnly yes

Je ne connaissais pas cette dernière option. IdentitiesOnly

à partir de la documentation de bitbucket elle-même

https://blog.developer.atlassian.com/different-ssh-keys-multiple-bitbucket-accounts/

0voto

Sebastian Sulinski Points 2757

J'ai eu cette même erreur pour un dépôt - soudainement, tous les autres dépôts fonctionnaient et fonctionnent toujours correctement lorsque j'essaie de pousser des commits. Le problème semble provenir de la clé SSH (comme vous le savez déjà d'après les commentaires précédents) - sur bitbucket, rendez-vous à l'adresse suivante View Profile puis cliquez sur Manage Account .

Sur le côté gauche, cliquez sur l'icône SSH Keys puis ajoutez celui que vous avez sur votre système dans le répertoire ~/.ssh/.

Si vous n'avez pas encore généré de fichier, suivez les instructions de l'un des articles, mais assurez-vous d'utiliser le fichier id_dsa.pub par défaut ou un fichier personnalisé, ce dernier nécessitant l'attribut -i avec le chemin d'accès à la clé lorsque vous vous connectez, par exemple.

ssh -i ~/.ssh/customkeyname username@ip_address

Une fois que vous avez ajouté votre clé locale à votre compte sur bitbucket, vous pourrez commencer à interagir avec votre dépôt.

0voto

Harry Bosh Points 1673

J'ai découvert que la solution qui fonctionnait le mieux pour moi était de diviser la poussée en petits morceaux.

et en supprimant les gros fichiers d'images de captures d'écran (10mb+) des commits

La sécurité n'était pas un problème en fin de compte, mais plutôt les limites des fichiers de stockage.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X