Herokuから私のレポをうまくクローンしそして別のリモートを追加した後
1/ git clone [email protected]:[APP].git
2/ git remote add bitbucket ssh://[email protected]/[ACCOUNT]/[REPO].git
3/ git Push bitbucket master
Line(3)を実行した後、またはSourceTreeを使用した後、まだこのエラーが発生しています
conq: repository access denied. access via a deployment key is read-only.
まず、このメッセージが実際に何を意味するのか理解できません。そしてそれは残念です。
SSH鍵ペアを作成してherokuに追加しました。
ssh-keygen -t rsa
heroku keys:add ./id_rsa.pub
私はまた私のキーをBitBucketのデプロイキーセクションに追加しました。しかし、私は何かが足りないはずです。この質問は怠惰ではありません、私はBitBucketsガイドを含む様々なドキュメントを読んでいます。しかし、それでもまだこの問題を回避することはできません。
この投稿は に関連しています。私はheroku gitリポジトリをbitbuketにインポートできますか。そしてどうやって?
追加の事実:
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
すべて問題ないようです。
今SSHオプションはセキュリティ設定の下にあります
あなたのアバターをクリックします - > Bitbucket Settings - > SSH Key - > Add Key
公開鍵を貼り付けます
あなたの鍵をあなたのプロファイルに追加し、NOTを特定のリポジトリに追加する必要があります。これに従ってください: https://community.atlassian.com/t5/Bitbucket-questions/How-do-I-add-an-SSH-key-as-opposed-to-a- deployment-keys/qaq-p/413373
展開キーは読み取り専用です。書き込みアクセスを有効にするには、次の操作が必要です。
このデプロイメントキーをリポジトリ設定から削除してください。とにかくこのキーでこのレポに書くことはできません。
[アバター] - > [設定] - > [SSHキー]に移動して、同じキーを追加します。
今ブランチを削除するにはプッシュしようとする
以前はリポジトリに書き込むことができましたが、これはBitBucketの変更点で、デプロイキーを使って書き込むことはできなくなりました。
'Deployment Key'は読み取り専用アクセス専用です。以下はこれをうまく処理するための良い方法です。
[アカウントSSHキーの管理]に同じキーを追加する場合は、最初に展開キーを削除する必要があります。
TLDR:ssh-add〜/ .ssh/yourkey
私はこの問題を解決しました。
そして他の答えのどれも助けにはならなかった。
私は./ssh/configにすべての適切なものを入れ、また以前のリポジトリはうまく動いていました(同じbitbucketアカウント、同じキー)。それから私はdeploy_keyを生成し、その後に新しいリポジトリを作成しました。
それ以降は新しいリポジトリを複製できませんでした。
Sshエージェントがどうやってこれをめちゃくちゃにしていたのか知っていたらいいのに、キーを追加して解決しました。 bitbucketの管理者ではなく、私のローカルのUbuntuにキーを追加するということです。コマンドは
~/.ssh$ ssh-add myregualrkey
これが誰かに役立つことを願っています。
デプロイメントキーを使用しようとしていたときにこれが発生しました。
私はssh -T [email protected]
経由で接続することができ、それは私が欲しいリポジトリを読むためのアクセス権を持っていることを私に教えてくれるでしょうが、git clone
は失敗します。
~/.ssh/known_hosts
をクリアし、ssh-keygen
を介して新しいキーを生成し、その新しいキーをbitbucketに追加し、再試行することで解決しました。
私は次の点を再強調したいと思います。
何とかしてここで答えを読んだ後でさえそれがかちりと鳴らなかったことを実現するために私に年齢を取った。
最近私は同じ問題に直面しました。次のようなエラーが出ました。
リポジトリアクセスが拒否されました。デプロイメントキーを介したアクセスは読み取り専用です
SSHキーは2種類あります。
私は自分のリポジトリのSSHキーを削除し、新しいSSHキーを自分のアカウントに追加したところ、うまくいった。
誰かに役立つことを願っています。乾杯
ステップ:
移行元サーバーでSSHキーを作成する
ssh-keygen
〜。/ sshディレクトリの下にあるid_rsa.pubをコピーしてコピーします。
ソースサーバで下記のコマンドを実行して動作するか確認してください
git remote show Origin
ソースサーバからの取得とプッシュの場合、プロトコルが「https」の場合は、以下のコマンドを実行して「git + ssh」に変更する必要があります。
git remote set-url Origin git+ssh://<bitbucketaccount>@bitbucket.org/<accountname>/repo.git
あなたがリポジトリにプッシュできるかどうかを確認してください。
完了しました。
まずBitbucketにプッシュするために使用したいキーを選択または作成します。その公開鍵が~/.ssh/bitbucket.pub
にあるとしましょう
~/.ssh/config
に追加: Host bitbucket.org
IdentityFile ~/.ssh/bitbucket
プッシュプルできる2段階プロセス
Step1:Mac上でsshキー(公開鍵と秘密鍵)を生成する
ステップ2:秘密鍵をmacに、公開鍵をgitのWebサイトに置く
以下の詳細な手順はMacユーザー向けです
ステップ1:鍵を生成する
ssh-keygen
と入力すると、キーの保管場所を入力するように求められます。/Users/[machinename]/.ssh/[keyname]
と入力することもできます。ステップ2:適切な場所にキーを押す[Macとリモートアカウント、すなわちGithub、bitbucket、gitlabなど]
ssh-add -K ~/.ssh/[keyname]
と入力して、秘密鍵をMacに追加します。pbcopy < ~/.ssh/[keyname].pub
と入力します。完了したら、今すぐプッシュプルできます。
Kabir Sarinと同じ問題がありました。解決策は、https URLを使用するのではなく、SSH経由でリポジトリを複製することでした。だから、これは私、そしてうまくいけば他の人を助けたものです:
git clone [email protected]:{accountName}/{repoName}.git
必要なのは - 別のキーを追加して使用することです。
私は最初のキーを見つけたので - 常に展開キー。
~/.ssh/config
でbitbucketに別のキーを手動で設定しているためにうまくいかないことがあります。