web-dev-qa-db-ja.com

Bitbucket ssh公開鍵は拒否されていますが、sshテストは問題なく接続されています

おそらく関連する情報は、bitbucket用にカスタムssh構成を設定していることです。 '.ssh/config'ファイルには次のものがあります。

[ivanna@comp]$ cat ~/.ssh/config 
Host bitbucket
    Hostname        bitbucket.org
    IdentityFile    /home/ivanna/.ssh/id_rsa_bitbucket
    IdentitiesOnly yes

このファイルのアクセス許可は、sshに関する限り間違いなく正しいです(私は構成ファイルの他のエントリを積極的に使用しています)。リモートOriginをgitに追加したとき、bitbucket.orgの代わりにbitbucketを使用しました。

git remote add Origin bitbucket:ivanna/my-repo.git

しかし、プッシュしようとすると、次のエラーが発生します。

Permission denied (publickey).
fatal: Could not read from remote repository.

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

ですから、公開鍵などを追加しなかったようですよね?しかし、私は間違いなくそうしました。さらに情報を検索すると、エラーに関するこのページが見つかります( https://confluence.atlassian.com/pages/viewpage.action?pageId=30281186 )。そして、私が彼らが言うことをして鍵をチェックするとき:

[ivanna@comp]$ ssh -T hg@bitbucket
logged in as ivanna.

You can use git or hg to connect to Bitbucket. Shell access is disabled.

うまくログインできるようです。それで...なぜ仕事をプッシュしないのですか?上記のリンクは、プロジェクト自体の権限の問題である可能性があると述べていますが、私は人々が提案したように権限を設定しましたが、何もしませんでした。誰が何が起こっているのか知っていますか?

12
Ivanna
ssh -T hg@bitbucket

あなたが使う hg@bitbucket SSH経由でログインする場合、ただしGitに追加するリモートURLでは、ユーザー名を指定しません。構成にも1つが含まれていないため、Gitはログインに使用するユーザー名を認識しません。

URLを次のように変更します。

git remote add Origin git@bitbucket:ivanna/my-repo.git

または、SSH構成にユーザーを追加することもできます。

Host bitbucket
    Hostname        bitbucket.org
    User            git
    IdentityFile    /home/ivanna/.ssh/id_rsa_bitbucket
    IdentitiesOnly yes
8
poke

これを行った場合:

git remote add Origin bitbucket:ivanna/my-repo.git

ユーザー名以外のものとして接続する必要があることをgitに伝えていません。これは、次のように.ssh/configファイルで行うことができます。

Host bitbucket
    User git
    Hostname        bitbucket.org
    IdentityFile    /home/ivanna/.ssh/id_rsa_bitbucket
    IdentitiesOnly yes

または、次のようなgit remote addコマンドラインで:

git remote add Origin git@bitbucket:ivanna/my-repo.git
4
larsks