Mac で Git & GitHub 環境の構築 / 再構築
はじめに
Mac 購入時など Git & GitHub 環境の再構築についてまとめます。
Git のバージョンを確認
Git は Mac にデフォルトでインストールされています。ターミナルでバージョンを確認します。
$ git --version
git version 2.39.3 (Apple Git-146)
Git に利用者情報を登録
Git に利用者情報を登録します。「ユーザー名」と「メールアドレス」を登録します。
$ git config --global user.name "yourname"
$ git config --global user.email "your_email@example.com"
反映された設定内容は ~/.gitconfig
で確認できます。
$ cat ~/.gitconfig
1 [user]
2 name = yourname
3 email = your_email@example.com
SSH 鍵を作成
Ed25519 というデジタル署名アルゴリズムを利用し秘密鍵(id_ed25519
)と公開鍵(id_ed25519.pub
)を作成します。
$ ssh-keygen -t ed25519 -C "your_email@example.com"
Generating public/private ed25519 key pair.
Enter file in which to save the key (/Users/yourname/.ssh/id_ed25519): <入力せずにEnter>
Enter passphrase (empty for no passphrase): <パスフレーズを入力>
Enter same passphrase again: <パスフレーズを入力>
Your identification has been saved in /Users/yourname/.ssh/id_ed25519
Your public key has been saved in /Users/yourname/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX your_email@example.com
The key's randomart image is:
+--[ED25519 256]--+
| ..+ =+E. |
| + + .. . |
| = % . o. |
| o B . |
| = B S . |
| = . B B . |
|. + . + * o. |
| . . o .o. |
| .oo |
+----[SHA256]-----+
$ ls -l ~/.ssh
total 16
drwxr-xr-x 4 yourname staff 128 5 10 22:38 ./
drwxr-x---+ 42 yourname staff 1344 5 10 22:28 ../
-rw-------@ 1 yourname staff 464 5 10 22:38 id_ed25519
-rw-r--r--@ 1 yourname staff 103 5 10 22:38 id_ed25519.pub
ちなみに Ed25519 とはデジタル署名アルゴリズムですが、SSH の鍵認証で最も広く使われているのは RSA 暗号す。しかし、最近では、より安全面と性能面でよい「Ed25519」というアルゴリズムが使われています。詳しくはこちらを参照ください。
GitHubアカウントの準備
GitHub を利用するためにアカウントを作成します。アカウントが無い場合はこちらから作成してください。
GitHubに公開鍵を登録
pbcopy
は便利コマンドで、利用すると Mac のクリップボードにターミナルの出力をコピーしてくれます。pbcopy
を実行し公開鍵の情報をコピーします。
$ pbcopy < ~/.ssh/id_ed25519.pub
GitHub のサイトより公開鍵の登録画面を開きます。
-
Title
は任意の名称を記入します。 -
Key
には先程コピーした公開鍵をペーストします。
SSH接続の設定を追加
~/.ssh/config
に SSH 接続の設定を追加します。
-
Host
は任意の名前を指定します。 -
HostName
は接続先の IP アドレスまたはホスト名を指定します。 -
IdentityFile
は秘密鍵のパスを指定します。 -
User
は接続先のユーザー名を指定します。
$ vi ~/.ssh/config
Host github.com
HostName github.com
IdentityFile ~/.ssh/id_ed25519
User git
Keychainに秘密鍵を追加
Mac ユーザーの場合、こちらのコマンドで秘密鍵を Keychain に追加することで、パスフレーズを毎回入力する必要がなくなります。
$ ssh-add --apple-use-keychain ~/.ssh/id_ed25519
SSH 接続確認
SSH 接続を確認します。
$ ssh -T github.com
The authenticity of host 'github.com (20.27.177.113)' can't be established.
ED25519 key fingerprint is SHA256:/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'github.com' (ED25519) to the list of known hosts.
Hi yourname! You've successfully authenticated, but GitHub does not provide shell access.
上記のメッセージにこちらがあれば完了です。
Hi yourname! You've successfully authenticated, but GitHub does not provide shell access.
作業コードを作成
GitHub にアップロードするプロジェクトを作成します。
$ mkdir test-20240505
$ cd test-20240505
$ touch README
$ git init
$ git add .
$ git commit -m "add README"
GitHub リポジトリ作成
リポジトリを作成します。
「HTTPS」ではなく「SSH」をクリックします。すると https://github.com/yourname/test-20240505.git
が git@github.com:yourname/test-20240505.git
に変わります。
GitHub リポジトリにプッシュ
リポジトリをプッシュできれば成功です。
$ git remote add origin git@github.com:yourname/test-20240505.git
$ git branch -M main
$ git push -u origin main
GitのEditorをVSCodeに変更
こちらの記事に記載した通り git commit
で起動するエディターとして VSCode を起動します。
$ git config --global core.editor 'code --wait'
設定内容は ~/.gitconfig
で確認できます。
$ cat ~/.gitconfig
[user]
name = yourname
email = your_email@example.com
[core]
editor = code --wait
さいごに
以上で Mac での Git & GitHub 環境の構築 / 再構築は完了です。
Discussion