コマンド使ってGitHubからcloneしたい!

デイトラ中級編で起きた悲劇

カリキュラムではsourcetreeでclone等をしていましたが、macのファンがめちゃめちゃ回転するようになり、調べてみるとsourcetreeが原因かもという記事をみつけ、githubもgitもTerminalも勉強不足だったので、これを機にできるようになろうと思い手を出しました。

しかし、

macのターミナルからcloneをしようとしたら、

Users/--------/.ssh/config: line 2: Bad configuration option: +

と、メッセージが表示され目眩がしました。わけわからん。

このメッセージが出る前に、結構ごちゃごちゃやってました。

ですが、丸一日悩んでやっと解決!

----------------------------------------------------------------------------

## 前提

configファイルも秘密鍵も公開鍵も無い状態
※かなりゴチャゴチャやってしまったので、一度全部削除してイチからやり直し。(やってよかったのかは不明)

## 流れ
GitHubの秘密鍵、公開鍵を作成
GitHubに公開鍵を登録


1.GitHub用の秘密鍵、公開鍵を作成


$ ssh-keygen -t ed25519 -N "" -f ~/.ssh/github -C sample@example.com


-t : 鍵の種類を選択 Ed25519 これがいいらしい!
-C : GitHubに設定したメールアドレス
-f : ファイル名を指定。デフォルト:~/.ssh/id_ed25519
-N : パスフレーズを指定。 "" はパスフレーズなし
セキュリティを上げるために設定したほうがいいらしい!

公開鍵の例: ~/.ssh/github.pub(場所)

ssh-ed25519 AAAAC3NzaC1lZBBBBBBBKKNAIHwbgzaHPnvXIeie2YhZubxGaxUSqMNwYKgk0YQLEIAW sample@example.com
​


秘密鍵の例: ~/.ssh/github

apwgdupapwpdpwgdpwgd-54jgtpdAAAABAAAAMwAAAAtzc2gtZW
QyNTUxOQAAACB8G4M8konnitihaYahhoooooIWbm8RmsVEqjDb2CoJNGECxCAFgAAAJhtRnIqbUZy
KgAAAAtzc1gtZWQyNTUxOQAAACB8G4M8xz571yHontmIWbm8RmsVEqjDb2CoJNGECxCAFg
AAAECtf4Yrv8e5kBBBBBBBB/Qh4JCfJEOEtncubpFiO2b2f5wbgzzHPnvXIeie2YaZubxG
axUSqMNvYKgk0YQLEIAWAAAAEnNhbXBsZUBleGFtcGxlLmNvbQECAw==
​


2. GitHubに公開鍵を登録


*まず、クリップボードに公開鍵をコピーしておきましょう!

pbcopy コマンドを使うとファイルの中身をクリップボードにコピーできます。


$ pbcopy < ~/.ssh/github.pub
​


そして、鍵の登録に行きます!

GitHubの設定画面を開きます。クリック!
https://github.com/settings/keys


New SSH keyで登録に入ります。
Title : 管理しやすいようなタイトルがいいです!
Key : コピーした公開鍵を貼り付けます!
Add SSH Key で登録!

 config へ追記 $vi ~/.ssh/config

$ vi ~/.ssh/config
Host github.com
 IdentityFile ~/.ssh/github
 User git
​


確認 $ssh -T github.com


$ ssh -T github.com
Warning: Permanently added 'github.com,52.69.186.44' (RSA) to the list of known hosts.
Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.

Hi 【名前】! You've successfully authenticated, but GitHub does not provide shell access.
とメッセージがでれば、とりあえずオッケーです!

まだまだ理解できてないので、これから勉強します!


ありがとうございます!よろしくおねがいします!