百鬼夜行

素性を知られぬままエンジニアになることを目指します

同一端末で異なるGithubアカウントのリポジトリにpushする

仕事で使っているGithubアカウントとは別のアカウントにpushしたかった。 git config --local だけいじってもできなかったのでやり方を調べた。

qiita.com

こちらを参考にしました。

キーを作ってGithubに登録するまで

$ cd ~/.ssh 
$ ssh-keygen -f test -t rsa -b 4096 -C "user@example.test" 
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in test.
Your public key has been saved in test.pub.
The key fingerprint is:
SHA256:qroLmktztqEO9MNKky8ZMjEjEiiHQNMAjiyiFU+VXrs user@example.test
The key's randomart image is:
+---[RSA 4096]----+
|B=+ ....         |
|O o=  . .        |
|==. .. . .       |
|X.    . .        |
|+=      S.       |
|+.+    .E        |
|+BoB  .          |
|==O +.           |
|===*.            |
+----[SHA256]-----+

で、ここで出てきた test.pubGithubのSettingsから追加する。-fの後はファイル名なので自分の好きな名前で、あとアドレスも自分が使いたいアドレスを入れる。

~/.ssh/configに接続先を設定するまで

~.ssh/config を作成して、下記のコードを入れる

#  user github
Host github-user
  HostName github.com
  User git
  Port 22
  TCPKeepAlive yes
  IdentitiesOnly yes
  IdentityFile ~/.ssh/test

ここで気をつけることは以下のとおり

  • userの部分はなんでもいいので自分が使いたいアカウント名とかつけておくといいかも
  • Identityfile は先ほど名前をつけたシークレットキーの方を指定する

git push するまで

ここに関しては参考リンクをそのまま見てもらった方がわかりやすいので、そちらを見てください。 Hostとアカウント名を間違えないようにだけ注意。

以上です。これで合法的にサボりながら趣味の開発できます。