思ったより時間がかかったのでメモを残します。
この記事でわかること
ソースツリーを活用して複数のGitHubアカウントを管理するためのガイド。
この設定により、個人プロジェクト、仕事用プロジェクト、副業用プロジェクト等のプロジェクト毎に異なるアカウントを使い分けることが可能になります。
必要な手順一覧
- SSHキーの生成と各アカウントへの登録
- SSH接続先の情報をssh configに記載する
- .git配下のConfig設定
- リポジトリごとのSSHキー指定
- 接続の確認
- コミット等で使用されるユーザーの確認
手順
1. SSHキーの生成と各アカウントへの登録
ここが詰まったところです。
同じキーをそれぞれのアカウントに登録していて、同じキーを使用したいと思っていましたが、
デフォルトユーザーで認証が優先されてしまうようで、うまくユーザー切り替えできず、認証が通りませんでした。
よって、別々のアカウントを使用した場合は、Githubにもう一つキーを登録しておく必要がありそうです。
普段使用している
キーファイルとは異なるファイル名でSSHキーを生成します。- ”任意の文字列(ユーザー名とかのがわかりやすそう)”-id_rsa
- ”任意の文字列(ユーザー名とかのがわかりやすそう)”-id_rsa.pub
- 各GitHubアカウントに生成したSSHキーを登録します。
2. SSH接続先の情報をssh configに記載する
複数アカウント対応したい場合に必要になる。
- ~/.ssh/config にあるファイルを編集(なければ作成する)
- よくキーを格納しているフォルダです(Shift + Command + . )
下記は最低限の設定です。
既存のアカウントの方も変えたければ変えて良いが、面倒なので今回は変えず、
# 既存のアカウント
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
# GitHubのアカウント2つ目 ☆ ここが重要
Host github.com.”任意の文字列(ユーザー名とかのがわかりやすそう)”
HostName github.com
User git
IdentityFile ~/.ssh/”任意の文字列(ユーザー名とかのがわかりやすそう)”-id_rsa
2. .git配下のConfig設定
プロジェクト毎の.git配下のConfigファイルをソースツリー経由で設定しているだけなので、ソースツリーを使わない人は直接変えてもらって良いです。
ユーザー情報設定
ユーザー情報 -> グローバル設定を使うのチェックを外し、使用するユーザー情報を入力

接続先設定
- プロジェクト毎の設定画面にてリモートを選択
- リモートリポジトリパスを編集(設定がないない人はここで追加する)
- ユーザー名にGithubのユーザーを入力
- URL/パスにGithubの接続先を入力
- ☆重要☆ URL/パスの「github.com」 の部分を→ 「github.com.”任意の文字列(ユーザー名とかのがわかりやすそう)”」にする


PR
敷金礼金、仲介手数料も0円。家具家電付き【クロスワンルーム】
確認
接続の確認
SSH接続できることを確認する。ここが通ればOK
ssh -T git@github.com
コマンドを使用して、1つ目のアカウントに対するSSH接続が成功するか確認します。ssh -T git@github.com.”任意の文字列(ユーザー名とかのがわかりやすそう)”
コマンドを使用して、各アカウントに対するSSH接続が成功するか確認します。
git configの確認
プロジェクト事にユーザーを使い分けられているか確認する(誤って別のアカウントでコミットしないことを確認する)
- プロジェクト(リポジトリ)ディレクトリ内で
git config user.name
を実行し、期待されるユーザー名が設定されているか確認します。
注意事項
- アカウントを間違えないように、各リポジトリの設定は最後に必ず確認しましょう。
まとめ
情報がまちまちだったため思ったより、時間がかかってしまったが、理屈がわかればそこまで難しくなかった。
寄付の依頼
もし、少しでもご参考になりましたらサイト運営への寄付をお願いします。
とても励みになります。
If you would like to help, please make a donation to the site management.
It is very encouraging.
BTC (ビットコイン) アドレス |
---|
35AfkHtN3paTC1iNVtHg6BDmCnHmffzQWM |
DEEPコイン アドレス |
---|
0x43Dbe7F99b4A31bF184b98A8A814ADEC48FB789D |






コメント