【Bitbucket】Gitにpushできないので、SSHキーを設定し直したらできた話。

  • このエントリーをはてなブックマークに追加
  • LINEで送る

こんにちは、0371です。

今日はBitbucketにレポジトリを作成し、Android Studioのプロジェクトをpushしようとしたら、SSH鍵を設定し直せと言われた話をします。

初心者のうちはよくわからないエラーが出るとビビりますが、ググりまくって解決しましょう。

自分は超初心者なので、ググってもドツボにハマっていきがちです。(大号泣)

スポンサーリンク

【ぼくが行った方法】

まずは、自分のBitbucketのアカウントにアクセスし、新規リポジトリを作成しました。

レポジトリを作成した

次にターミナルで自分の作業ディレクトリにcdして、Bitbucketの画面の手順通りに実行してみました。

すると、このようなエラーメッセージが出ます。

一つ目のは「commitしていないから」という理由で出るようです。

error: src refspec master does not match any.が発生した

二つ目は「過去に一度remoteにpushした場所との整合性がとれずerrorがでてしまった」らしいです。

git push 時のerror: failed to push some refs to

 

とりあえずcommitをすれば一つ目は解決しそうなので、commitします。(初歩的なやらかしだそうですorz)

すると次はこのようなメッセージが出ます。

一つ目の警告メッセージを検索すると、「BitbucketのIPアドレスが変わったために出る警告」ということがわかりました。

SSH接続でgit pushしたときに警告が出るやつへの対処法

念の為、これも解決させておきます。

以下の命令文でIPアドレスの変更ができます。

 

二つ目は「公開鍵が許可されていない」らしいですね。

git cloneしようとした時でたエラーと戦った話 

 

SSH鍵を作り直せばいいらしいので、それを試してみます。

まずは id_rsa(秘密鍵) と id_rsa.pub(公開鍵 publicのpub) があるかどうかを確認します。

以下の命令の記号が見えにくいかも知れませんが、ハイフン(-)ではなくチルダ(~)です。

 

結果としては、どちらも存在しませんでした。

 

この known_hosts と known_hosts.old は先ほどのIPアドレス変更の時に生成されたファイルのようです。

SSH接続エラー回避方法:.ssh/known_hostsから特定のホストを削除する/削除しないで対処する3つの方法

秘密鍵と公開鍵が無いので、生成します。

以下の命令文で鍵の生成ができます。

 

passphraseはとりあえず空白にします。二回Enter keyを押しましょう。

以下のように、キラキラしているような絵みたいなのが表示されると成功です。(鍵によって模様違うと思います。)

 

SHA256: の鍵はあとで使用します。

ここでもう一度、秘密鍵と公開鍵が生成されているかどうかを確認します。

 

今度はちゃんと存在していますね。

では、Bitbucketの「設定」→「SSH鍵」→鍵の生成を行います。

鍵を設定する場面

ここで、ターミナルにこの命令文を実行すると、クリップボードに公開鍵を保存することができます。(Ctrl+Cと同じ)

 

コピーした公開鍵をkey*のところに貼り付けて、鍵の追加を押しましょう。公開鍵の貼り付け

 

これで、問題は解決しました。

あとはもう一度 push origin masterしましょう。

これで、Bitbucketにpushすることができました。

pushに成功しました。

やったぜ!!!!!

 

【まとめ:うろ覚えでGitを使わない】

今回はGitをよく理解していない状態で、何も見ないでpushしようとした結果がこうです!

ちゃんとした手順を踏まないと無駄な時間を過ごすことになるので、きちんと勉強しますw

こちらのサイトとかGitの勉強に良さそうですね。

git –everything-is-local

それじゃあ今から頑張ります!

  • このエントリーをはてなブックマークに追加
  • LINEで送る