MENU

git/githubで複数のユーザーを使い分ける

今回githubのアカウントを複数持ちたくなったのでその方法を書いておきます。主にsshの設定で手こずりました。

 

エンジニアの中には仕事での開発とプライベートでの開発とでgithubアカウントを複数持っている人も居るようです。そのためか「github アカウント 切り替え」などで調べるといくつか記事が出てきます。

gitとsshのconfigについて(備忘録)

[備忘] 複数Githubアカウントでssh接続設定(config)を使い分ける手順

GitHubで仕事用とプライベート用のアカウントを切り替えて使う

GitHubでssh接続する手順~公開鍵・秘密鍵の生成から~

手順は以下の4つです。

  1. ssh鍵を新しく作成
  2. ssh設定ファイルで新しくHostを設定
  3. githubに公開鍵を登録
  4. 作業用フォルダでローカルのユーザ名とメールアドレスを設定

 

目次

ssh鍵を作成

鍵のファイルを作りたいディレクトリにて

ssh-keygen -t rsa -C {Githubメールアドレス} -f {作成する鍵の(ファイル)名}

で鍵を作成。今回は2つ目なので、「ファイル名がデフォルトのものだと上書きされるよ」という警告が出ました。オプションでファイル名を指定しておきます。

ssh鍵作成コマンドの書式に関しては以下のページに書いてありました。

SSH-KEYGEN (1)

Host設定

ここで一番詰まりました。

Host github.com.main # メインアカウント
  HostName github.com
  User git
  Port 22
  IdentityFile ~/.ssh/id_rsa_main  # メインアカウント用の鍵
  TCPKeepAlive yes
  IdentitiesOnly yes

Host github.com.sub # サブアカウント
  HostName github.com
  User git
  Port 22
  IdentityFile ~/.ssh/id_rsa_sub  # サブアカウント用の鍵
  TCPKeepAlive yes
  IdentitiesOnly yes

これをsshのconfigファイルに加えると、github.comとgithub.com.subでアカウントを分けることができます。

ここで詰まったのは、そのconfigファイルがどこにあるのかということ。出てくる記事ではWindowsとは異なるファイル構成のようで。見つけるのに苦労しました。

まあ初期設定のファイル構成を覚えていればすぐ見つかったのかもしれませんが…

Program Files/Git/etc/ssh/ssh_config

にありました。

追記:

別のPCで試したところ、~.ssh/ディレクトリに新しくconfigファイルを追加し、その中に記載することでssh接続できました。

 

公開鍵の登録

いつものやつですね。

~/ssh/hogehoge.pubの内容をすべてコピペします。

登録できたかどうかは以下のコマンドで確認。

ssh -T git@{Hostに設定した名前}
$ ssh -T git@github.com.main
$ ssh -T git@github.com.sub

 

ローカルでユーザ情報を設定

グローバル設定ではメインのアカウントを使ってると思うので

git config --local user.name "user name"
git config --local user.email "email@example.com"

で作業ディレクトリにユーザ名とメールアドレスを設定すれば完了です。

 

 

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次