Github のプライベートリポジトリからcloneするときにSSLエラーがでた場合の対応策

昔に作ったMacのローカルgit環境で、githubのプライベートリポジトリにアクセスするときのSSLエラー解決方法。新しいmacbook airの Snow Leopardでは問題なくできたので、何かの設定漏れをしていたのかな?

Mac OSX 10.5 Leopard にインストールしたgitで、githubのプライベートリポジトリからcloneしようとすると、SSLアクセスができないとのエラー。git を最新版にアップデートしつつ、 curl に ssl オプションをつけてインストール。


% bzip2 -dc git-1.7.3.5.tar.bz2|tar xvf -
% cd git-1.7.3.5
% ./configure
% sudo make prefix=/usr/local all
% sudo make prefix=/usr/local install
% git --version
git version 1.7.3.5

% sudo port uninstall curl @7.18.1_0
% sudo port clean curl
% sudo port install curl +ssl
--->  Activating curl 7.18.1_0+ssl
--->  Cleaning curl

これで、githubのログインIDとパスワードを聞いてくるところまでは行けるようになったけれど、SSLのcertificateが正しくないとのアラートが出る。


% git clone https://github.com/goodpic/hoge.git
   
error: SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed while accessing https://github.com/goodpic/hoge.git/info/refs

そこで、Macでは以下のようにcurlのCAの場所を、http.sslcainfo で指定する。


% sudo git config --global http.sslcainfo /usr/share/curl/curl-ca-bundle.crt    

2011/6/17追記。 加えて以下の作業もやってあげる必要があるかもしれません。

参考