初めに
複数アカウントの設定方法がわからなかったため、調べてまとめてみた。
手順
複数の Git アカウントを1台のパソコンで管理・運用するためには、以下の方法が効果的です。
1. SSH キーの生成と設定
各アカウントごとに異なる SSH キーを作成し、GitHub の設定ファイル (~/.ssh/config
) で使い分けます。
- SSH キーの生成:各アカウント用に SSH キーを生成します。
ssh-keygen -t ed25519 -C "email@example.com" -f ~/.ssh/id_ed25519_account1
ssh-keygen -t ed25519 -C "email@example.com" -f ~/.ssh/id_ed25519_account2
-
~/.ssh/config
の設定:生成したキーを使用するように設定ファイルを編集します。
# アカウント1
Host github.com-account1
HostName github.com
User git
IdentityFile ~/.ssh/id_ed25519_account1
# アカウント2
Host github.com-account2
HostName github.com
User git
IdentityFile ~/.ssh/id_ed25519_account2
これにより、リポジトリのクローン作成やプッシュ時に特定のアカウントを指定できます。
git clone git@github.com-account1:username/repository.git
2. HTTPS とパーソナルアクセストークンの利用
HTTPS 経由でリポジトリにアクセスし、各アカウントに対応するパーソナルアクセストークンを使用する方法です。
- リモート URL の設定:リモートリポジトリの URL にアカウント情報を含めます。
git remote set-url origin https://username@github.com/username/repository.git
- 認証情報の保存:初回アクセス時にパスワードとしてパーソナルアクセストークンを入力し、資格情報マネージャーに保存します。
3. Git のユーザー情報のディレクトリ別設定
プロジェクトごとに異なるユーザー情報を自動的に適用するように設定します。
-
~/.gitconfig
の編集:特定のディレクトリ以下で別の設定ファイルを読み込むようにします。
[user]
name = Main User
email = main@example.com
[includeIf "gitdir:~/path/to/private/projects/"]
path = ~/.gitconfig_private
-
サブ設定ファイルの作成:
~/.gitconfig_private
にサブアカウントの情報を記載します。
[user]
name = Private User
email = private@example.com
これにより、指定したディレクトリ内のプロジェクトでは自動的にサブアカウントの情報が使用されます。
注意点
複数のアカウントを同一のマシンで運用する際は、認証情報の混同や誤操作を防ぐため、設定を慎重に行うことが重要です。
以上の方法を組み合わせることで、1台のパソコン上で複数の Git アカウントを効率的に管理・運用できます。
最後に
GPTで調べました笑