🤖

git のSSH鍵設定

2024/06/04に公開

サイトごとに異なるSSH鍵を使用する

git を使用していると、SSH鍵を使い分けたいことがあります。
そもそもgitとsshでの接続で鍵を使い分けたいとか、リポジトリごと、githubやgitlabのサービスごとに鍵を分けたいとか。
そんな時に任意の鍵を使用する方法です。

都度指定する方法

git -c core.sshCommand="ssh -i ~/.ssh/gitlab" push

[push] は任意のgitコマンド
[~/.ssh/github]の部分は任意のssh鍵に変更して使用する

-cオプション:git configで設定する項目を一時的に上書きして実行するオプションです。

永続化する方法

いちいち上記のコマンドを打つのが面倒、リポジトリをVSCodeで開いたときにgitのpushやpullがVSCode内でできない といった問題が起こります。
そこで、リポジトリの設定で(globalじゃないのでリポジトリごとに設定できます)永続化させます。

 git config core.sshCommand "ssh -i ~/.ssh/gitlab"

参考

お世話になります。

git CLIで使用したい鍵をコマンド上で明示的に宣言するには

gitconfig の設定は3段階

git -c オプション

Discussion