Unix上にいつものGit, GitHub環境をつくる
Vagrantなどで新しい仮想環境(Unix)を作るたびにGitの初期設定、GitHubとのSSH設定をぐぐってるような気がするので、記事としてまとめます。
環境について
Gitをインストールする
$ sudo yum install git ... インストール: git.x86_64 0:1.8.3.1-6.el7_2.1 依存性関連をインストールしました: libgnome-keyring.x86_64 0:3.8.0-3.el7 perl-Error.noarch 1:0.17020-2.el7 perl-Git.noarch 0:1.8.3.1-6.el7_2.1 perl-TermReadKey.x86_64 0:2.30-20.el7 rsync.x86_64 0:3.0.9-17.el7 完了しました!
git config 関連を設定する
これを設定しなくても致命的な問題はないですが、GitHub上でアカウントに紐付くEmailをローカルのGitに設定しておくことで、誰がコミットしたものなのかが判別できるようになります。(Git - アカウントの準備と設定)
# 名前を設定する $ git config --global user.name konnobu # メールアドレスを設定する $ git config --global user.email konnobu@email.com # いい感じに出力をカラフルにする $ git config --global color.ui true
GitHubと通信するためにSSH設定をする
鍵を作る
$ ssh-keygen -t rsa -C "your_mail_address@email.com" Generating public/private rsa key pair. Enter file in which to save the key (/home/vagrant/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/vagrant/.ssh/id_rsa. Your public key has been saved in /home/vagrant/.ssh/id_rsa.pub. The key fingerprint is: a2:ee:0c:0c:f8:98:11:a1: your_mail_address@email.com The key's randomart image is: +--[ RSA 2048]----+ |. | |.. | |.o.. | |+.+dw | |.O..=... | |adsaw.. o | | +. o . | +-----------------+
途中で、3回ほど任意のキーワードを入力する必要がありますが、基本的に何も入力せずにエンターのみで進んで大丈夫です。(ただ、パスフレーズを登録したほうがより安全とGitHubは言っています。)
鍵(公開鍵)を確認してコピーする
次に、鍵ができたので公開鍵を確認します。
場所は先程の鍵を作ったときにYour public key has been saved in /home/vagrant/.ssh/id_rsa.pub.
というようになっているので、これをcat
で出力します。
$ cat ~/.ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCrBHfcckGtnkj3N/8mzADcjMsPmh71BuUdwlokkvf7tzpn+R5jHzkKZnEcdbtrwYzrCxMOnrUXXM69gdxFBUCGl+zsDs0XEVMA3tRYEf3OISZAUw2UnVWlu7e8n28YqIZHuVAu5E/92l2zzpKDKuXNjY/dgcZ0jOzaKV2hQxYx84d7NgobQT1IsKyywaNlvdXkv09Y1zC8hF7f4br6iauXtFGC8RWlXcK26FsF6WqJDzX/4ucv6XrdpW2HcA/Nz/mr46/k4M/iA75L52w5JuFjftr81NoCbV2vzg8aDiYj26WInYxAyh4ZGKlEDVbHPhZ6Dq4/en7Wc7uio3NRf7yt "your_mail_address@email.com"
公開鍵の中身がバーっと表示されるので、これをまるっとコピーします。(ssh-rsa ... @email.com"
の部分)
GitHub上に鍵を登録する
次に、GitHubにアクセスし、設定画面のSSH keysを表示します。
すると、以下のようなフォームがあるので、Key
には先ほどコピーした内容をペースト。Title
にはその鍵の環境名などを入力すると複数環境がある場合だと区別しやすくなります。
Add SSH key
で登録します。
SSH接続ができるか確認する
$ ssh -T git@github.com
すると以下のように聞かれるので、yes
でエンター。
The authenticity of host 'github.com (192.30.253.112)' can't be established. RSA key fingerprint is 16:27:ac:a5:4d:eb:df:a6:48. Are you sure you want to continue connecting (yes/no)? yes
Hi!と返ってきたら成功です。
Hi Konnobu! You've successfully authenticated, but GitHub does not provide shell access.
お疲れ様でした!