LoginSignup
0
0

More than 3 years have passed since last update.

GitHubアカウント切り替え

Posted at

1台のPCでGitHubアカウントを切り替えようとした時にハマったので、その備忘録です。

この記事のゴール

仕事用のPCにプライベート用アカウントのリポジトリをcloneしてpushできるようにする。

切り替えの手順

  1. 仕事用のPCにプライベート用アカウントに使うsshキーを作成
  2. GitHubに公開キーを登録
  3. ~/.ssh/configファイルにプライベート用アカウント用の設定を追加
  4. 接続確認
  5. git clone
  6. git push

1. 仕事用のPCにプライベート用アカウントに使うsshキーを作成

$ cd ~/.ssh
$ ssh-keygen -t rsa -b 4096 -f <YOUR_FILE_NAME> // 今回は例としてprivate_rsaで作っています

// private_rsa と private_rsa.pub が作成される 

2. GitHubに公開キーを登録

$ pbcopy < ~/.ssh/private_rsa.pub

// 公開キーがクリップボードにコピーされる

GitHubのプライベートアカウントのSettingsより公開キーを登録

3. ~/.ssh/configファイルにプライベート用アカウント用の設定を追加

~/.ssh/config
// Host githubはもともと仕事で使って存在していた
Host github
  HostName github.com
  User git
  IdentityFile ~/.ssh/main_rsa

// 以下のHost github-privateを追加する
Host github-private
    HostName github.com
    User git
    Port 22
    IdentityFile ~/.ssh/private_rsa

4. 接続確認

$ ssh -T github-private

// Hi <GITHUB_ACCONT_NAME> You've successfully authenticated, but GitHub does not provide shell access.
// 上記のように返ってくれば接続成功

5. git clone

接続までは成功しているので、 cloneで持ってくる。

@以下の Host名 を先ほど作成したHostにする。

// こちらはエラーになる
$ git clone git@github.com:<ACCOUNT_NAME>/<REPOSITORY_NAME>.git

// こちらはOK 
$ git clone git@github-private:<ACCOUNT_NAME>/<REPOSITORY_NAME>.git

6. git push

local userの登録をする

$ git config --local user.name <プライベートユーザー名>
$ git config --local user.email <プライベートメールアカウント>

$ git push
// pushできる

以上です。
慣れてないと結構ハマりますね。。。

0
0
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
0
0