Help us understand the problem. What is going on with this article?

Mac で GitHub に SSH 接続する方法(Fork を利用)

はじめに

GitHub に SSH 接続してたけど
PC を変えた時にどうやって設定してたか忘れてしまった...

そんな方のため(主に自分のため笑)に記事として残すことにしました :sunglasses:

環境

  • macOS Catalina バージョン 10.15.6
  • git version 2.24.3 (Apple Git-128)
  • Fork Version 1.0.96

前提条件

  • GitHub のアカウントがある
  • GitHub に private リポジトリがある
  • Git が使用できる状態になっている
  • Fork という Git クライアントをインストール済み

接続するまで

1. 認証用ディレクトリを作成
2. 公開鍵と秘密鍵を作成
3. 接続設定を追加
4. GitHub に公開鍵を登録する
5. Fork の設定
6. 接続できるか確認

1. 認証用ディレクトリを作成

# 現在のユーザーで作成
$ mkdir ~/.ssh

# 所有者読み・書き・実行権限を付与
$ chmod 700 ~/.ssh

2. 公開鍵と秘密鍵を作成

# 認証用ディレクトリに移動
$ cd ~/.ssh

# 認証鍵を作成
#
# 以下の3つについて聞かれるため入力する
# 1. 鍵情報を保存するファイルの名前(今回は id_github_rsa )
# 2. パスフレーズ
# 3. パスフレーズ(確認用)
$ ssh-keygen -t rsa

# 認証鍵に所有者読み込み権限を付与
$ chmod 400 ~/.ssh/id_github_rsa
$ chmod 400 ~/.ssh/id_github_rsa.pub

# ssh-agent に秘密鍵を登録
$ ssh-add ~/.ssh/id_github_rsa

こんな感じで生成できたかと思います。
ちなみに Finder で「 shift + command + . 」とすると隠しファイルが見れるようになります :sunglasses:

3. 接続設定を追加

# 認証用の設定ファイルを作成
$ touch ~/.ssh/config

# 所有者読み・書き権限を付与
$ chmod 600 ~/.ssh/config

# 編集を開始
$ vi ~/.ssh/config

#
# 編集終わったら保存して次へ
#

# 内容を確認
$ cat ~/.ssh/config

中身は下記のようにします

Host github
 HostName github.com
 IdentityFile ~/.ssh/id_github_rsa
 User git
 Port 22

4. GitHub に公開鍵を登録する

Terminal の以下のコマンドで、公開鍵の中身をコピーして

$ pbcopy < ~/.ssh/id_github_rsa.pub

GitHub の SSH キーの登録画面 に貼り付けて「Add SSH key」を押して、SSH キーを登録する

貼り付けた画像_2020_07_26_0_50.png

5. Fork の設定

GitHub にログインして SSH key を設定する

ログイン前 ログイン後 SSH key 設定後

6. 接続できるか確認

GitHub の private リポジトリの SSH 用のパスをコピーして

貼り付けた画像_2020_07_26_1_09.png

Fork でクローン

貼り付けた画像_2020_07_26_2_27.png

無事にクローンできたら :ok_hand:

以下のコマンドを使って確認する方法もあります

# 公開鍵が登録されたか確認
$ ssh -T git@github.com

# 登録したホスト名でも接続できるか確認
$ ssh github

接続できなかったら

この記事にコメントなり Twitter の DM なり、気軽に質問していただけたらと思います :hand_splayed:
できれば、知見を集約するという意味で、この記事にコメントしていただけると幸いです :relieved:

参考記事

おわりに

今回は Mac の Terminal で認証鍵を作成したり、Web で GitHub に公開鍵を登録したりしていましたが、実はこれらの作業は Fork で行えたりします。やりやすい方でやってもらえればいいと思います!

Fork おすすめなのでみなさん使ってみてください :hand_splayed:

blendthink
People have different ways of feeling and thinking. All of those are right.
yumemi
みんなが知ってるあのサービス、実はゆめみが作ってます。スマホアプリ/Webサービスの企画・UX/UI設計、開発運用。Swift, Kotlin, PHP, Vue.js, React.js, Node.js, AWS等エンジニア・クリエイターの会社です。Twitterで情報配信中https://twitter.com/yumemiinc
http://www.yumemi.co.jp
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした