GitLabに公開鍵認証でssh接続する(けどなかなかできない!)

GitLabに公開鍵認証しようとしていろいろはまってしまったのでポイントだけまとめます。

※公式ドキュメントに誤りがあるので注意2016/7時点

  1. 秘密鍵の作成時にコメントを入れる。(これは公式ドキュメント通りなのではまってはいないが念のため)
    ssh-keygen -t rsa -C "{登録ユーザーのメールアドレス}"
  2. 秘密鍵をssh-addで登録する。
     $ssh-add ~/.ssh/id_rsa

    このとき「Could not open a connection to your authentication agent.」がでたら

     $ eval `ssh-agent`

    でエージェントを起動する。(普通にssh-agentでは環境変数の問題でちゃんと起動しないらしい。)

  3. configのuserに”git”を設定する!!
    ここが公式ドキュメントで間違っている模様。
    ユーザー名を指定しろとなっているが、それでは認証が通らない。

    #
    #Main gitlab.com server
    #
    Host gitlab.com
    RSAAuthentication yes
    IdentityFile ~/.ssh/id_rsa
    User git
    

 

上の3点をやればあとは普通につながる・・・はず。