目次
はじめに
Macで「Sourcetree」からGitHubのプロジェクトをクローンする際にHTTPS接続だとエラーが出たので、SSHで接続する方法を調べました。その際の覚書です。
秘密鍵&公開鍵を生成
ターミナルを開く。
以下のコマンドを入力する。
「xxxx@xxxx.com」はGitHubで登録しているメールアドレスに書き換える。
$ ssh-keygen -t ed25519 -N "" -f ~/.ssh/github -C xxxx@xxxx.com
【内容】
-t
: 鍵の種類を選択-C
: GitHubのメールアドレス-f
: ファイル名指定。~/.ssh/id_xxxx
-N
: パスワード指定。""
でパスワードなし(推奨)
下記が表示される。
Generating public/private ed25519 key pair.
/Users/mbp/.ssh/github already exists.
Overwrite (y/n)? y
//<<前回登録していた場合はyを入力して上書き>>
Your identification has been saved in /Users/mbp/.ssh/github.
Your public key has been saved in /Users/mbp/.ssh/github.pub.
The key fingerprint is:
//<<ここにkeyとメールアドレスが表示される>>
The key's randomart image is:
+--[ED25519 256]--+
//<<ここにkeyのイメージが表示される>>
+----[SHA256]-----+
GitHubに公開鍵を登録
下記コマンドをターミナルへ入力する(公開Keyがクリップボードに保存される)
$ pbcopy < ~/.ssh/github.pub
- GitHubの公開鍵の設定画面を開く
New SSH key
ボタンを押下Title
は管理しやすいように指定のパソコン名や生成した日付を入力Key
に先程クリップボード保存した公開鍵を貼り付ける(⌘ + V)Add SSH Key
で鍵を登録する
Vimで追記する
以下のコマンドをターミナルへ入力して、「Vim」のテキスト編集画面に入る。
$ vi ~/.ssh/config
編集画面に入ったら下記のような画面が出るので、i
キーで編集モードに切り替える。
~
~
~
~
~
下部が— insert –
と表示されれば編集ができるようになるので下記のコードを一番上にコピペする。
Host github github.com
HostName github.com
IdentityFile ~/.ssh/github
User git
ESC
キーを押してVimの編集モード終了、:wq
と入力することでVimのテキスト保存と画面が閉じられる。
最後に下記のコマンドをターミナルへ入力。
$ ssh -T github.com
以下が表示されれば接続成功。
Hi <GitHubのアカウント名> You've successfully authenticated, but GitHub does not provide shell access.
以上です。
さいごに
こちらを書いてる最中に「Fork」というGitクライアントツールに触れました。ちょっと触った感じですが「Sourcetree」より動作が軽く、差分の破棄も簡単だったので、「Fork」に乗り換えるかもしれません^^; 並行して使用することも可能なのでしばらくは両方使ってみたいと思います。