ざっくりん雑記

プログラミングで忘れそうなことをひたすらメモる

Unix上にいつものGit, GitHub環境をつくる

Vagrantなどで新しい仮想環境(Unix)を作るたびにGitの初期設定、GitHubとのSSH設定をぐぐってるような気がするので、記事としてまとめます。

環境について

  • OS X El Capitan ver.10.11.6
  • ターミナル(bash)

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にはその鍵の環境名などを入力すると複数環境がある場合だと区別しやすくなります。

f:id:azuuun:20160730001654p:plain

Add SSH keyで登録します。

SSH接続ができるか確認する

以下を入力するとGitHubとの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.

お疲れ様でした!

参考

GithubのSSH通信設定 - Qiita