1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Windows】BitbacketにSourcetreeでSSH接続する方法

Last updated at Posted at 2022-03-17

いつもどおりにSourcetreeでpushしようと思ったらエラーで止まるようになってしまった。
よく読むと、SSH接続じゃないとダメになったとのこと。
同じことで困ってる方がいたらご参考にどうぞ。

ただ私はエンジニアではなく、仕事でGitが必要なデザイナーなので、
何か間違っていることがあっても見逃してください。

Bitbacket公式の説明ページもあるんだけど、
https://support.atlassian.com/ja/bitbucket-cloud/docs/set-up-an-ssh-key/
中途半端に日本語で見にくいので、
https://support.atlassian.com/bitbucket-cloud/docs/set-up-an-ssh-key/
この英語のほうが見やすかった。

~以下の【】の中は自分の環境に合わせて変えてください。~

なんでこんなことに?

BitbacketがSSH接続じゃないといけないように2022/03に変わったらしい。

まずはSourcetreeで設定を確認する。

メニューの
ツール > オプション > 認証タブ > 編集ボタン
ホスティングサービス:Bitabacket
ホストURL:https://bitbacket.org/
優先するプロトコル:SSH

認証:OAuth
ユーザー名:【ユーザー名】
OAuthトークンを読み込み(※よくわかってないけどこっちにしてみた)

☑認証に成功
となっているので問題なさそう。

リモートの設定

メニューの リポジトリ > リポジトリ設定 
パスを選択して編集ボタンを押す
URL/パス: git@bitbucket.org:【ユーザー名】/【リポジトリ名】.git
の形式にする(https://~だったら変更する!)
ここがhttps接続のままだとうまくいかない

Gitbashをインストールする

コマンドプロンプトだとだめな場合があるらしいからインストールする
(最近Macが壊れてWindowsを使ってるからインストールしてなかった)

公式サイトからDLしてくる
Gitをインストールすると一緒についてきてるから、windowsのスタートメニューをクリックしたところで入力して検索してみる

SSH鍵を作る

(以下の作業はWindows Powr Shellとかコマンドプロンプトではできない)
Gitbash開いて、場所はホームそのままで
$ ssh-keygen
すると

$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/【ユーザー名】/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/【ユーザー名】/.ssh/id_rsa
Your public key has been saved in /c/Users/【ユーザー名】/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:ほにゃほにゃほにゃほにゃほにゃほにゃほにゃほにゃほにゃ
The key's randomart image is:
+---[RSA 3072]----+
| .      E.o.     |
|o. .   o ++      |
|+ + + +  =       |
|.+ = X .o o      |
|+.+ * = So       |
|o++* o .         |
|==o.o            |
|O oo             |
|oBoo             |
+----[SHA256]-----+

ってことで、
【ユーザーフォルダ】/.sshってフォルダができている
(windowsのユーザー名のフォルダの直下にある)

そのままGitbashで下記コマンド実行

$ eval $(ssh-agent)

すると
Agent pid 267
とか出てくる。よくわからないけど。

次に、パスを追加?してあげる

$ ssh-add ~/.ssh/id_rsa

すると、

Identity added: /c/Users/【ユーザー名】/.ssh/id_rsa (【ユーザー名】@X【ユーザー名】R)

とかなって成功!

Bitbacketにキーを登録する

画面左下の自分のアイコンのところクリック
Personal Settings > セキュリティ >SSH鍵 を開く
鍵を追加ボタンを押す
Labelは好きな言葉を入れる
Keyはさきほど作成した
【ユーザーフォルダ】/.ssh フォルダに入っている
id_rsa.pubをメモ帳とかで開いて全部選択→コピペする
鍵を追加ボタンを押す

以上で完了

SourceTreeでsshキーを変換する

ツール > SSHキーの作成/インポート
Loadボタンから先程作成したid_rsa.ppkを開く
Save private keyで拡張子を.ppkにしたものを~/.ssh/配下に保存する
(元々あるファイルはid_rsaで拡張子がない)

Pageantにsshキーを追加する

アイコン右クリック>Add Key
前の項目で作成したid_rsa.ppkを登録する
(拡張子ない方は、ファイル形式がwindowsにあってないのか、無効な形式です、とエラーがでてしまって登録ができない)

これでやっとpushできた!

Gitbachにもどり、

$ git push origin master

とやったら久しぶりにpushできました!!!

はぁ~すごい時間かかった。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?