もともとGitLabにはhttps接続していたが、毎回IDパスワードを聞かれるのでSSH接続を試した。
接続手順
SSHキーの作成
ローカルPCのPowerShellでSSHキーを生成する。
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
解説
- -t rsa:暗号化方式(type)を RSA に指定
- -b 4096:鍵の長さを 4096 ビットに指定
- -C “your_email@example.com”:鍵を識別するために付与するコメント
鍵の保存場所を聞かれるので、場所だけ確認してそのまま Enter。※鍵の保存場所を変えたければ、ここで指定する。
パスフレーズを聞かれるので、特に設定せずにそのまま Enter。※設定したければ設定する。
先ほど確認した保存場所に、以下のファイルが作成される。
- id_rsa:秘密鍵
- id_rsa.pub:公開鍵(GitLab 等に登録する)
後で使うので、id_rsa.pub をテキストエディタ等で開いておく。
■ GitLabに公開鍵を登録する
GitLab > 自分のアイコンをクリック > Edit Profile
サイドバーの「SSH Keys」 > Add new key
先ほどテキストエディタで開いておいた id_rsa.pub の内容を貼り付けて登録する。
GitLabに公開鍵を登録する
GitLab > 自分のアイコンをクリック > Edit Profile
サイドバーの「SSH Keys」 > Add new key
先ほどテキストエディタで開いておいた id_rsa.pub の内容を貼り付けて登録する。
インシデント
SSHキーを登録したのに、username や password を聞かれる場合がある。どの形式で通信するかは、リモートの設定に依存する。
以下のコマンドで設定を確認する。
git remote -v
- origin https://~~ となっていたら HTTPS 接続になっている。
- origin git@gitlab.com:~~ となっていたら SSH 接続になっている。
HTTPS 接続になっていた場合は、以下のコマンドで SSH 接続に変更する。
git remote set-url origin git@gitlab.com:username/repo.git
そもそもまずSSH接続できるのか確認したい場合は以下。
ssh -T git@gitlab.com

コメント