最近のチーム開発ではバージョン管理にGitを使うことが多くなってきました。Gitを使った開発を共有するためのサービスGitHubを利用することでGitの力をフルに使えます。GitHubにはPagesやActionsといった強力なツールがあります。また、GitHubはエンジニアのSNSのようなものです。ここでGitHubに慣れてみましょう。
Gitの導入
Gitをダウンロードし、インストールします。
インストール時にいろいろなオプションが選べますが、デフォルトのまま次へ進んでいってかまいません。
Gitの各種設定
Gitを単体で使っている分には問題ないのですが、GitHubで使う際には誰が変更をしたのかわかるように設定する必要があります。ということで、あなたの情報を設定しましょう。
まずはユーザー名を設定しましょう。
$ git config --global user.name "あなたの名前"
GitHubではメールアドレスの設定も必要です。ここは本物のメールアドレスを設定しなくてもかまいませんが、他人がGitHubであなたを見つけて連絡を取りたいときに適当なメールアドレスが設定されていると困ってしまいます。そんなときのためにGitHubではあなたのメールアドレスを偽装してくれます。以下のページから確認してみてください。専用のメールアドレスを用意できる方、別に気にしない方はそのまま進めてください。
$ git config --global user.email "あなたのメールアドレス"
SSH接続の設定
SSH接続では暗号を用いて暗号化された通信を行うことで、安全にGitHubと通信を行うことができます。ただ、設定が初回の設定が面倒です。設定は簡単なのでサクッとやっていきましょう。
まずは暗号を生成しましょう。以下のコマンドで暗号を生成できます。入力するメールアドレスは暗号生成に使うものなので、あえて本当のメールアドレスを使わない人もいます。私はプライベートで使うメールアドレスを入力しています。
$ ssh-keygen -t ed25519 -C "あなたのメールアドレス"
そうすると、以下のようにキーを保存する場所を選べるようになりますがデフォルトでかまいません。自分で場所を選びたい人は適宜ここで指定してください。
> Enter a file in which to save the key (/c/Users/YOU/.ssh/id_ALGORITHM):[Press enter]
その次にパスフレーズを聞かれますが、Ed25519暗号の強度を高めますので設定をしましょう。
> Enter passphrase (empty for no passphrase): [Type a passphrase]
> Enter same passphrase again: [Type passphrase again]
これで暗号は生成できました。このままでは暗号はただの怪文書です。ここからは、この暗号を使えるように設定していきましょう。
まず、SSHで利用できるようにSSHを司るアプリを起動します。
$ eval "$(ssh-agent -s)"
その後、先ほど起動した暗号ファイルを登録します。
$ ssh-add ~/.ssh/id_ed25519
これでコンピュータからのSSHを暗号化できました。次からはSSHで暗号化された通信をGitHubで利用できるよう、GitHubに登録します。このままではSSHの通信内容が暗号化できたのですが、GitHubから見て怪文書です。
まずは登録している暗号鍵を表示させます。以下はLinuxでのコマンドです。
$ cat ~/.ssh/id_ed25519.pub
Windowsの方は以下のコマンドです。
$ clip < ~/.ssh/id_ed25519.pub
Macなら以下のコマンドです。
$ pbcopy < ~/.ssh/id_ed25519.pub
これで暗号鍵が表示されます。マウスで全部選択してCtrl
+Shift
+c
でコピーできます。
そうしたらGitHubのページに移動し、任意のページで、右上隅にあるプロファイルの画像をクリックし、次に[設定]をクリックします。
そうしたら公式の説明の通り、設定をしていきます。
- サイドバーの [アクセス] セクションで、 [SSH キーと GPG キー] をクリックします。
- [New SSH key](新しい SSH キー) または [Add SSH key](SSH キーの追加) をクリックします。
- [Title] フィールドで、新しいキーを説明するラベルを追加します。 たとえば、個人のラップトップを使っている場合、このキーに「個人用ラップトップ」といった名前を付けます。
最後に接続を確認しましょう。
ssh -T git@github.com
警告が表示されることがありますが、yes
を入力して問題ありません。
最後に以下のようなメッセージが出力されればオッケーです。
> Hi USERNAME! You've successfully authenticated, but GitHub does not
> provide shell access.