Après avoir cloné avec succès mon dépôt depuis Heroku et ajouté une autre télécommande
1/ git clone [email protected]:[APP].git
2/ git remote add bitbucket ssh://[email protected]/[ACCOUNT]/[REPO].git
3/ git push bitbucket master
Je reçois toujours cette erreur après avoir exécuté la ligne (3) ou utilisé SourceTree
conq: repository access denied. access via a deployment key is read-only.
Tout d'abord, je ne comprends pas ce que ce message signifie dans la pratique. Et c'est dommage.
J'ai créé une paire de clés ssh et ajouté à heroku:
ssh-keygen -t rsa
heroku keys:add ./id_rsa.pub
J'ai également ajouté ma clé dans la section des clés de déploiement dans BitBucket. Mais je dois manquer quelque chose. Cette question n'est pas par paresse, j'ai lu divers documents, y compris des guides BitBuckets. Mais cela ne résout toujours pas ce problème.
Ce message est lié à Puis-je importer mon référentiel Heroku Git dans Bitbuket? et comment?
FAITS SUPPLÉMENTAIRES:
ssh -T [email protected]
conq: authenticated via a deploy key.
You can use git or hg to connect to Bitbucket. Shell access is disabled.
$ ssh -v [email protected]
OpenSSH_5.6p1, OpenSSL 0.9.8r 8 Feb 2011
debug1: Reading configuration data /Users/joel/.ssh/config
debug1: Applying options for bitbucket.org
debug1: Reading configuration data /etc/ssh_config
debug1: Applying options for *
debug1: Connecting to bitbucket.org [207.223.240.181] port 22.
debug1: Connection established.
debug1: identity file /Users/joel/.ssh/id_rsa type 1
debug1: identity file /Users/joel/.ssh/id_rsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3
debug1: match: OpenSSH_5.3 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.6
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'bitbucket.org' is known and matches the RSA host key.
debug1: Found key in /Users/joel/.ssh/known_hosts:5
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/joel/.ssh/id_rsa
debug1: Remote: Forced command: conq deploykey:13907
debug1: Remote: Port forwarding disabled.
debug1: Remote: X11 forwarding disabled.
debug1: Remote: Agent forwarding disabled.
debug1: Remote: Pty allocation disabled.
debug1: Server accepts key: pkalg ssh-rsa blen 279
debug1: read PEM private key done: type RSA
debug1: Remote: Forced command: conq deploykey:13907
debug1: Remote: Port forwarding disabled.
debug1: Remote: X11 forwarding disabled.
debug1: Remote: Agent forwarding disabled.
debug1: Remote: Pty allocation disabled.
debug1: Authentication succeeded (publickey).
Authenticated to bitbucket.org ([207.223.240.181]:22).
debug1: channel 0: new [client-session]
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LC_CTYPE = UTF-8
PTY allocation request failed on channel 0
On dirait que tout va bien.
Réponses:
La première confusion de mon côté était de savoir exactement où définir les clés SSH dans BitBucket.
Je suis nouveau sur BitBucket et je définissais une clé de déploiement qui donne un accès en lecture seule.
Assurez-vous donc que vous définissez votre
rsa pub key
dans vos paramètres de compte BitBucket .Cliquez sur votre avatar BitBucket et sélectionnez Paramètres Bitbucket (
Gérer son compte). Là, vous pourrez définir des clés SSH .J'ai simplement supprimé la clé de déploiement , je n'en ai pas besoin pour l'instant. Et ça a marché
la source
Maintenant, l'option SSH est sous les paramètres de sécurité
Cliquez sur votre avatar -> Paramètres Bitbucket -> Clé SSH -> Ajouter une clé
Collez votre clé publique
la source
vous devez ajouter votre clé à votre profil et NON à un référentiel spécifique. suivez ceci: https://community.atlassian.com/t5/Bitbucket-questions/How-do-I-add-an-SSH-key-as-opposed-to-a-deployment-keys/qaq-p/413373
la source
Les clés de déploiement sont en lecture seule. Pour activer l'accès en écriture, vous devez:
Supprimez cette clé de déploiement de vos paramètres de référentiel. De toute façon, vous ne pourrez pas écrire dans ce dépôt avec cette clé.
Allez dans "Avatar -> Paramètres -> Clés SSH" et ajoutez la même clé
Maintenant, essayez de pousser pour supprimer la branche
Vous avez pu écrire dans des référentiels auparavant, mais il s'agit d'un changement dans BitBucket où vous ne pouvez plus écrire avec la clé de déploiement.
la source
La «clé de déploiement» est réservée à l'accès en lecture seule. Ce qui suit est un bon moyen de résoudre ce problème.
la source
Vous devez d'abord supprimer la clé de déploiement si vous souhaitez ajouter la même clé sous Gérer la clé SSH du compte.
la source
Someone has already registered this as a deploy key.
TLDR: ssh-add ~ / .ssh / yourkey
Je viens de résoudre ce problème.
Et aucune des autres réponses n'a aidé.
J'ai eu un ./ssh/config avec toutes les bonnes choses, aussi un dépôt antérieur fonctionnant bien (même compte bitbucket, même clé). Ensuite, j'ai généré un deploy_key, puis créé un nouveau référentiel.
Après cela ne pouvait pas cloner le nouveau dépôt.
Je souhaite savoir comment / pourquoi l'agent ssh a tout gâché, mais l'ajout de la clé l'a résolu. Je veux dire l'ajout de la clé dans mon Ubuntu local, pas dans l'administrateur bitbucket. La commande est juste
J'espère que cela aide quelqu'un.
la source
Je l'ai fait lorsque j'essayais d'utiliser une clé de déploiement, car c'est exactement ce que je voulais.
Je pouvais me connecter via
ssh -T [email protected]
et cela me dirait que j'avais accès à lire le référentiel que je voulais, maisgit clone
échouerait.Effacer
~/.ssh/known_hosts
, générer une nouvelle clé viassh-keygen
, ajouter cette nouvelle clé à bitbucket et réessayer l'a corrigé pour moi.la source
Je voudrais souligner à nouveau ce qui suit:
Cela m'a pris beaucoup de temps à réaliser, d'une manière ou d'une autre même après avoir lu les réponses ici, il n'a pas cliqué.
la source
Choisissez ou créez d'abord la clé que vous souhaitez utiliser pour passer à Bitbucket. Disons que sa clé publique est à
~/.ssh/bitbucket.pub
~/.ssh/config
:la source
Récemment, j'ai rencontré le même problème. J'ai eu l'erreur suivante:
accès au référentiel refusé. l'accès via une clé de déploiement est en lecture seule.
Vous pouvez avoir deux types de clés SSH:
J'ai simplement supprimé ma clé SSH du référentiel et ajouté une nouvelle clé SSH à mon compte et cela a bien fonctionné.
J'espère que ça aide quelqu'un. À votre santé
la source
J'avais le même problème que Kabir Sarin. La solution était de cloner le dépôt via SSH, au lieu d'utiliser l'URL https. c'est donc ce qui m'a aidé, et j'espère que les autres:
la source
Pas:
Créer des clés ssh sur le serveur source
ssh-keygen
Cat et copiez id_rsa.pub situé sous le répertoire ~. / Ssh
Vérifiez si cela fonctionne en exécutant la commande ci-dessous sur le serveur source
git remote show origin
Pour récupérer et pousser à partir du serveur source, si le protocole est 'https', vous devez le changer en 'git + ssh' en exécutant la commande ci-dessous
git remote set-url origin git+ssh://<bitbucketaccount>@bitbucket.org/<accountname>/repo.git
Vérifiez si vous pouvez faire pousser vers le repo.
Terminé!
la source
Tout ce dont vous avez besoin - ajoutez une autre clé et utilisez-la.
Comme j'ai trouvé la première clé - toujours la clé de déploiement.
la source
Parfois, cela ne fonctionne pas car vous définissez manuellement une autre clé pour bitbucket dans
~/.ssh/config
.la source
Étape 1: génération de clés
ssh-keygen
ceci vous invitera à entrer l'emplacement de stockage de la clé, vous pouvez taper/Users/[machinename]/.ssh/[keyname]
Étape 2: pousser les touches vers les emplacements appropriés [comptes mac et distants, par exemple Github, bitbucket, gitlab, etc.]
ssh-add -K ~/.ssh/[keyname]
terminal pour ajouter votre clé privée au macpbcopy < ~/.ssh/[keyname].pub
pour copier la clé publique dans le presse-papiersla source
voici le code complet pour cloner tous les dépôts d'une équipe / utilisateur BitBucket donné
Plus d'informations: https://thepythoncoding.blogspot.com/2019/06/python-script-to-clone-all-repositories.html
la source
pour cette erreur: conq: accès au référentiel refusé. l'accès via une clé de déploiement est en lecture seule.
Je change le nom de ma clé, exemple
Je travaille sur ma propre clé sur bitbucket
la source