1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GitHubアカウントの切り替え

Posted at

経緯

自分のPCの設定ではGitとスクール用のGitHubアカウントが紐づけられていたが、個人用のGitHubアカウントのリポジトリにプッシュしたいときどうすればよいか分からなかったのでChatGPTに聞いた。

方針

スクール用と個人用の「鍵」を作成し、複数アカウントを切り分けられるようにする。

設定

1. 鍵の作成

ssh-add C:\Users\ユーザ名\.ssh\id_ed25519_school   REM スクール用の鍵を作成
ssh-add C:\Users\ユーザ名\.ssh\id_ed25519_personal   REM 個人用の鍵を作成

2. ssh-agentに鍵を追加

  • ssh-agentの起動
sc start ssh-agent REM Command Lineでの記述
Start-Service ssh-agent REM Power Shellでの記述
  • 鍵を追加
ssh-add C:\Users\ユーザ名\.ssh\id_ed25519_school   REM スクール用の鍵を追加
ssh-add C:\Users\ユーザ名\.ssh\id_ed25519_personal   REM 個人用の鍵を追加

3. コンフィグファイルの作成

C:\Users\ユーザ名\.ssh\config   REM コンフィグファイルは拡張子なし

ファイル内に以下の内容を書き込む(メモ帳でファイルを開き、書き込む)

# スクール用
Host github.com-school
    HostName github.com
    User git
    IdentityFile C:\Users\ユーザ名\.ssh\id_ed25519_school

# 個人用
Host github.com-personal
    HostName github.com
    User git
    IdentityFile C:\Users\ユーザ名\.ssh\id_ed25519_personal

4. GitHubにSSH Keyの情報貼り付け

SettingsSSH & GPG KeysNew SSH Keys
スクール用アカウントにはC:\Users\ユーザ名\.ssh\id_ed25519_school.pub
個人用アカウントにはC:\Users\ユーザ名\.ssh\id_ed25519_personal.pub
を開いて出てくるssh-ed25519から始まる文字列をすべてコピーしkey欄に貼り付け

これで設定完了。

使い方

1. 使いたいアカウントのリポジトリを指定

git remote set-url origin git@github.com-school:スクール用GitHubアカウント名/スクールの任意リポジトリ名.git
REM または
git remote set-url origin git@github.com-personal:個人用GitHubアカウント名/個人の任意リポジトリ名.git

2. 接続テスト

ssh -T git@github.com-school
ssh -T git@github.com-personal

正常なら

Hi <ユーザー名>! You've successfully authenticated, but GitHub does not provide shell access.

ユーザ名がschool/personalのうち自分が設定した方になっていればOK

最後に

Git/GitHubの使い方をよく理解しきれていないので間違っている箇所がある可能性は高いです。
お手数ですが見つけた方は編集リクエストいただけたらと思います。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?