版本库访问被拒绝。 通过部署密钥访问是只读的
成功克隆我从英库的回购,并添加了另一个远程
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上开发自己的密钥