LoginSignup
3
0

More than 1 year has passed since last update.

忙しい人のためのmacでのGitHub設定

Posted at

作成日は令和4(2022)年12月21日です。

gitの環境設定

ユーザー名を設定する

git config --global user.name "ユーザー名"

そのままコピって「ユーザー名」で登録しないように。

メールアドレスを登録する

Githubに登録するメールを自分のプライベートなメールにすると外から丸見えで、スパムメールが届く(主に外国から)
対策として、GitHubが各ユーザーに一つずつ割り当てたメールを使う。

Settingsを開く

image.png
どこからでも良いのでSettingsを開く。

Emailsを開く

Emailsを開くと、数値+アカウント名@users.noreply.github.comのようなメールアドレスが書かれている。このメールアドレスを使うと良い。
下部の赤枠の部分にはチェックが入っていることを確認する。
image.png

Macのターミナルでメールを登録する

確認できたら、MacのターミナルでGitで使うメールアドレスを登録する。

git config --global user.email 数値+アカウント名@users.noreply.github.com

コミット時に使うエディタを登録する(お好みで)

Visual Studio Code(VSCode)を使うならVSCode側で「code」で起動できるように設定しないといけない。

VScodeの設定

コマンドパレットにshellと書けば候補が出る。
Installの方を選ぶ。

image.png

インストールするのに管理者権限がいるよ!と言うのでOKを押す。
image.png

端末のパスワードを入力する
image.png

成功したよ!というメッセージが出たらOK
image.png

これでターミナルからVSCodeがcodeというコマンドで起動できるようになった。
あとは次のようにgitコマンドを打てばエディタが登録できる。

git config --global core.editor 'code --wait'

sshの設定

ターミナルで~/.sshに移動する。
もし、既存の鍵があるなら名前を変えるなどしないと大変なことになるので、フォルダの中身も確認をしておくと良い。

cd ~/.ssh 
ls -la

特に以前作った鍵がないのであれば、以下の手順の通りにやれば良い。ある場合は作る鍵の名前を変える等で対応をする。

ssh-keygenで鍵作成

ssh-keygenする。強度については、ED25519を使う。
GitHub公式もED25519使えと書いてあるのでそうする。

ssh-keygen -t ed25519 -C "github.com"

-Cの後ろのコメントは何でも良い。-Cはコメントのオプション。
とりあえずわかりやすくしておいた。

npc@npc .ssh % ssh-keygen -t ed25519 -C "github.com"    
Generating public/private ed25519 key pair.
Enter file in which to save the key (/Users/myname/.ssh/id_ed25519): # 保存先。そのままEnterでもいい。
Enter passphrase (empty for no passphrase):  # ばれないようなパスフレーズ
Enter same passphrase again: # もう一回パスフレーズ
Your identification has been saved in /Users/myname/.ssh/id_ed25519
Your public key has been saved in /Users/myname/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:***************************************** github.com
The key's randomart image is:
+--[ED25519 256]--+
| something       |
|                 |
+----[SHA256]-----+

このような感じで作られたらOK。鍵は見せたくないので伏せ字にした。

ssh-agentの利用

公式に従う派なので、ssh-agentも使う。パスフレーズ何回も打ちたくないけれどパスフレーズのない鍵なんて許せない派でもあるため。
configファイルを使って設定していくので、configファイルを定義する。

open ~/.ssh/configで開けるならば良いが、作っていないならば開けないので自分で作る。
touch ~/.ssh/configをしてからopen ~/.ssh/configする。
複数のアカウントを使い分ける必要がある時(会社用とプライベート用が分離しているとか)であればconfigで分けると良い。

書く内容は以下の通り。

Host *.github.com
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_ed25519
  IdentitiesOnly yes

AddKeysToAgentとUseKeychainは重要。IdentityFileはファイル名を変えているならば変える。

保存をしたらターミナルに戻って、以下のコマンドを入力。

eval "$(ssh-agent -s)"
ssh-add --apple-use-keychain ~/.ssh/id_ed25519

Error connecting to agent: Connection refusedが出たらeval "$(ssh-agent -s)"がうまく実行出来ていない可能性が高い。
成功したらパスフレーズを入力するように言われるので、ssh-keygenで作成した時のパスフレーズを入力する。

Identity added: /Users/myname/.ssh/id_ed25519 (コメントの文字)

と出たらOK。
一度この作業をしておけば、次からパスフレーズを求められることがなくなるので便利。(色々設定は必要だけれども)

次に、公開鍵をGitHubに登録するため、公開鍵の内容をクリップボードに保存しておく。

pbcopy < ~/.ssh/id_ed25519_github.pub 

ターミナルの作業は一旦ここでストップ。まだ使うのでそのままにしておく。

GitHubの設定

github.comに戻り、Settingsから、「SSH and GPG keys」を選択する。
image.png

「New SSH key」のボタンをクリックして、公開鍵を貼り付ける。
image.png

「Add SSH key」を押すとアクセス認証画面が出るので、指示に従う。パスワードを使っても良い(Use your password)
image.png

下図のように登録した内容が表示されたらOK。
image.png

接続テスト

ターミナルに戻り、アクセスできるか確認をする。以下のまま入力する。

ssh -T git@github.com

以下のようなメッセージが出るので、最後の行でyesと入力する。

The authenticity of host 'github.com (20.27.177.113)' can't be established.
ED25519 key fingerprint is SHA256:****************************************
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])?

このメッセージが出たら成功。

Hi MaskerDog! You've successfully authenticated, but GitHub does not provide shell access.

注意
再起動でssh-addが消えるので対応をする必要がある。
.zshrcにssh-add --apple-load-keychainを追加しておくとターミナル起動時にkeyを追加してくれる。

最後に

公式が一番くわしい。
https://docs.github.com/ja/authentication/connecting-to-github-with-ssh

3
0
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
3
0