なぜ必要なのか
- Githubアカウントを複数所有している
- 個人で使用しているアカウント
- 本業用アカウント
- 副業用アカウント×複数
- 案件ごとに適切なアカウントを使用して作業を行わなければならない
1passwordでの設定
- 公式の案内に従って1passwordをセットアップ
- 次のコマンドを使用して1passwordの認証画面が起動すればOK
ssh -T git@github.com
開発者向けSSH キー | 1Password
アカウントごとにssh-keyを生成/登録する
- 1passwordで
新規アイテム > sshキー
で生成できる
- Githubのアカウントごとに生成して登録する
異なるVault(保管庫)に切り分けている場合
- agent.tomlを開く(SSHキーの設定から開ける)
- Vaultの名称を登録する
[[ssh-keys]]
vault = "プライベート"
[[ssh-keys]]
vault = "Hoge企業用アカウント"
cloneしたディレクトリごとにconfigを切り替える
- 任意のディレクトリ配下に
.gitconfig
を配置し、上書きするconfigを設定する
[user]
name = eaglesakura-override
email = example@example.com
signingkey = 署名用のキーの公開鍵
[includeIf "gitdir:path/to/directory/"]
path = path/to/directory/.gitconfig
- enterpriseではなく、普通にgithub.comアカウント複数を適宜切り替える場合
- これをアカウント数だけ追加する
Host example-account.github.com
HostName github.com
IdentityFile ~/.ssh/example-account.pub
- IdentityFileは公開鍵だけexportして書き込めば良い
- permission 600にする
- cloneするときにホスト名を
example-account.github.com
に書き換えればOK
完了