質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

GitBucket

GitBucketとはScalaで実装され、Java仮想マシンで動作するリポジトリ管理ツールです。Webブラウザから管理することができます。 「GitHubクローン」と謳うだけあり、GitHubとよく似たUIを持ちます。

Q&A

解決済

2回答

6412閲覧

【rails】bitbucketからのcloneでエラーになる。

gogoackman3

総合スコア109

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

GitBucket

GitBucketとはScalaで実装され、Java仮想マシンで動作するリポジトリ管理ツールです。Webブラウザから管理することができます。 「GitHubクローン」と謳うだけあり、GitHubとよく似たUIを持ちます。

0グッド

3クリップ

投稿2017/03/28 09:49

編集2017/03/28 13:07

このページを見ながら、railsアプリをEC2にて動かそうとしています。

諸々のインスタンスの設定が完了し、いざbitbucketからrailsアプリをcloneしようとしたところ、以下のエラーが発生しました。

ruby

1 rails git clone git@bitbucket.org:MyName/sample.git 2Cloning into 'sample'... 3ssh: Could not resolve hostname bitbucket: Name or service not known 4fatal: Could not read from remote repository.

実は、前回別のアプリで同じ作業をやっていて、このエラーは発生しませんでした。

/etc/resolv.confを確認したところ、以前正常にcloneできたアプリも今回のものも以下の通り同じでした。

ruby

1 rails cat /etc/resolv.conf 2options timeout:2 attempts:5 3; generated by /sbin/dhclient-script 4search ap-northeast-1.compute.internal 5nameserver 172.31.0.2

なぜ、今回の場合だけ、このようなエラーになるのか全く見当が付かず・・・。

こちらなどにも似ている質問があり、.git/config内に記述されたurl bitbuketをipに変更したら解決するとありますが、以前、そのようなことはやらずに問題が発生していないこともあり、その方法は少し腹に落ちません。

前述の質問の解答欄に、名前解決ができてないという表現もあるのですが、根本的に何が問題なのかわからないと気持ちが悪く・・・。

どなたかご教示頂ければ幸いです。。。

【質問に対する追記】

以下の通りです!恐らくこちらは問題ないかと思うのですが、いかがでしょうか?

ruby

1 .ssh ssh -T git@bitbucket.org 2logged in as "MyName". 3 4You can use git or hg to connect to Bitbucket. Shell access is disabled.

~/.ssh/configの内容は以下の通りです。

ruby

1 .ssh cat config 2Host bitbucket.org 3 Hostname bitbucket.org 4 User git 5 IdentityFIle ~/.ssh/aws_git_rsa

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

(大きく外しているかもしれませんが・・・)

ちなみに、sshコマンドで "bitbucket" に接続しようとすると、どのようなメッセージが表示されるのでしょうか。

ssh -T git@bitbucket.org

正常に接続できれば、「You can use git or hg to connect to Bitbucket. Shell access is disabled.」のようなメッセージが表示されると思います。

ssh: Could not resolve hostname bitbucket: Name or service not known

このメッセージから判断すると、~/.ssh/config の内容に以下のような記述がありませんか。

Host bitbucket.org Hostname bitbucket User git IdentityFIle ~/.ssh/id_rsa

投稿2017/03/28 12:13

gorogoroIT

総合スコア447

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gogoackman3

2017/03/28 12:49

質問ありがとうございます!本文に追記させて頂きました。ご確認頂けると嬉しいです!
gogoackman3

2017/03/28 13:08

教えて頂いたことをヒントに頂いて解決致しました!ありがとうございます! 後ほど、自己解決欄に記載しておきます。本当にありがとうございます。
guest

0

自己解決

解決しました・・・!

以下のconfigのHostの部分を【bitbucket.org】→【bitbucket】と".org"を削除したら問題なくgit cloneが出来ました。

ruby

1 .ssh cat config 2Host bitbucket.org 3 Hostname bitbucket.org 4 User git 5 IdentityFIle ~/.ssh/aws_git_rsa

もともとSSHの確認をするときに、

ruby

1ssh -T git@bitbucket.org

というコマンドを利用していたため、修正後のconfigの設定だと

ruby

1Permission denied (publickey).

というエラーがでたため、configのHostの部分に".org"を追加していました。
しかしながら、それが原因でgit cloneに失敗していたようです。

configファイルを修正後の形にした後でも以下のコマンドならSSHでのアクセスが出来ました。

ruby

1ssh -T git@bitbucket

つまり、

①configのHost名とSSHコマンドで利用するドメインは合っていなければならない。
②bitbucketの場合は、host名は"bitbucket"でなければならなかった。

という理解をしました。

投稿2017/03/28 13:15

gogoackman3

総合スコア109

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問