GitHubで複数アカウントを使い分け方法解説(Sourcetreeも可)

PR
【保存】Sourcetree で複数のGitHubアカウントを使い分ける方法
この記事は約5分で読めます。

思ったより時間がかかったのでメモを残します。

この記事でわかること

ソースツリーを活用して複数のGitHubアカウントを管理するためのガイド。
この設定により、個人プロジェクト、仕事用プロジェクト、副業用プロジェクト等のプロジェクト毎に異なるアカウントを使い分けることが可能になります。

必要な手順一覧

  1. SSHキーの生成と各アカウントへの登録
  2. SSH接続先の情報をssh configに記載する
  3. .git配下のConfig設定
  4. リポジトリごとのSSHキー指定
  5. 接続の確認
  6. コミット等で使用されるユーザーの確認

手順

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
需要の高い人気プログラミング言語&フレームワーク【将来性】
数多くの種類の言語からプログラミング初心者にもエンジニアのキャリアアップにも最適な将来性の高い人気のプログラミング言語とおすすめフレームワークを紹介!特に需要の把握はスキルアップと年収に直結です。ガチで必要な全ての選択肢の答えがここに
【Ruby on Rails】find_or_create_byとfind_or_initialize_byの違い?
もう存在確認の分岐は不要〜Active Recordでデータを扱う際には効率的な方法で検索、作成、初期化するためのメソッドが提供されています。この記事ではfind_or_create_byとfind_or_initialize_byの違いを解説
ReactのおすすめUIライブラリ-絶対使うべきTOP5【技術選定】
JavaScript・TypeScriptで現在大人気もはや一強敵なしReactのおすすめ人気UIライブラリトップ5 – 選び方と特徴 〜 絶対使ったほうがよいおすすめライブラリを厳選して選定!もはやUIライブラリの技術選定はここから選べばOKか
【DX】更に成長したい中堅ITエンジニアにおすすめの書籍8選
インプットから改革!〜 伸び悩むすべての若手から中堅エンジニアへ 〜 必ず手に取ってほしいシステム開発の関連書籍を8冊厳選!次のステップとして、フィットする書籍をまとめました。プログラミング力向上の他に、システム開発における全体的な知識、設計思想、開発手法、UI&UXの知識をインプットして視座と理解力を上げておくと良いでしょう!

PR


PR
PR

コメント

タイトルとURLをコピーしました