版本库访问被拒绝。 通过部署密钥访问是只读的

成功克隆我从英库的回购,并添加了另一个远程

1/ git clone git@heroku.com:[APP].git 2/ git remote add bitbucket ssh://git@bitbucket.org/[ACCOUNT]/[REPO].git 3/ git push bitbucket master 

运行第(3)行或使用SourceTree后,我仍然收到此错误

 conq: repository access denied. access via a deployment key is read-only. 

首先,我不明白这个信息在实践中意味着什么。 这是可耻的。

我没有创buildSSH密钥对,并添加到heroku:

 ssh-keygen -t rsa heroku keys:add ./id_rsa.pub 

我还在BitBucket的部署密钥部分添加了我的密钥。 但是我一定会错过一些东西。 这个问题不是出于懒惰,我一直在阅读包括BitBuckets指南在内的各种文档。 但它仍然没有解决这个问题。

这篇文章是关于我可以导入我的heroku git回购bitbuket? 如何?

其他事实:

 ssh -T hg@bitbucket.org conq: authenticated via a deploy key. You can use git or hg to connect to Bitbucket. Shell access is disabled. $ ssh -v git@bitbucket.org 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 no-more-sessions@openssh.com debug1: Entering interactive session. debug1: Sending environment. debug1: Sending env LC_CTYPE = UTF-8 PTY allocation request failed on channel 0 

看起来一切都很好。

我的第一个困惑是在哪里设置SSH密钥在BitBucket。

我是BitBucket的新手,我设置了一个只能读取访问权部署密钥

所以确保你在你的BitBucket帐户设置中设置你的rsa pub key

点击你的BitBucket头像,然后selectpipe理帐户 。 在那里你可以设置SSH密钥

我只是删除了部署密钥 ,现在我不需要任何东西。 它的工作

现在SSH选项在安全设置下

点击你的头像 – > Bitbucket设置 – > SSH密钥 – >添encryption钥

粘贴你的公钥

如果要在“pipe理帐户SSH密钥”下添加相同的密钥,则必须先删除部署密钥。

TLDR:ssh-add〜/ .ssh / yourkey

我刚刚解决了这个问题。

而其他答案都没有帮助。

我有一个./ssh/config所有正确的东西,也是一个早期的存储库工作正常(相同的bitbucket帐户,相同的密钥)。 然后我生成了一个deploy_key,之后创build了一个新的存储库。

之后,无法克隆新的回购。

我希望我知道/为什么SSH代理搞砸了,但添encryption钥解决了它。 我的意思是在我的本地Ubuntu中添encryption钥,而不是在bitbucket admin中。 命令就是这样

  ~/.ssh$ ssh-add myregualrkey 

希望这有助于某人。

当我尝试使用部署密钥时,发生了这种情况,因为这正是我想要的。

我可以通过ssh -T git@bitbucket.org连接,它会告诉我有权访问我想要的存储库,但是git clone会失败。

清除~/.ssh/known_hosts ,通过ssh-keygen生成一个新密钥,将这个新密钥添加到bitbucket中,然后重试为我修复。

我有同样的问题卡比尔沙林了。 解决scheme是通过SSH克隆回购,而不是使用https URL。 所以这对我和其他人都有帮助:

  git clone git@bitbucket.org:{accountName}/{repoName}.git 

“部署密钥”仅用于只读访问。 以下是通过这个工作的一个好方法。

  • 创build和SSH密钥,并将其添加到bitbucket(用户头像 – >位桶设置 – > SSH密钥)
  • 的〜/ .ssh / known_hosts中
  • ssh-add -D(删除加载到SSH代理的密钥)
  • ssh-add〜/ .ssh / your_private_key_for_bitbucket
  • ssh git@bitbucket.org -Tv(确认你的密钥已经被用来连接到bitbucket)
  • git push'remote name''分支名称'

所有你需要的 – 添加另一个密钥,并使用它。

正如我find第一个关键 – 总是部署密钥。

有时候它不起作用,因为你在~/.ssh/config手动设置了另一个bitbucket的密钥。

对于这个错误:conq:资源库访问被拒绝。 通过部署密钥访问是只读的。

我改变了我的钥匙的名字,例如

 cd /home/try/.ssh/ mv try id_rsa mv try.pub id_rsa.pub 

我在bitbucket上开发自己的密钥