このエラーが出たら以下を実行してみてください。 私はWSL uBuntuでこれが出ました。
簡単な方法
証明書を再インストール。 これで出来た人もいるみたいです。 私の場合はこれでは出来ず、この下の2つ目の方法『certファイルを取ってきて.gitconfigに設定』でgit clone出来ました。
sudo apt-get install ca-certificates
certファイルを取ってきて.gitconfigに設定
以下、Chromeでの例です。
- github.comに行く
- URLの左の『鍵マーク』をクリック
- 『この接続は保護されています』をクリック
- 『証明書は有効です』の右のマークをクリック
- 『詳細』をクリック
- 『DigiCert Global Root CA』をクリック
- 『選択した証明書をエキスポート』をクリック
- WSLの/usr/share/ca-certificatesに保存する。
私の場合、以下のフォルダに入っています。<user_name>はあなたのユーザー名になっていると思います。
C:\Users\<user_name>\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\rootfs\usr\share\ca-certificates
- .gitconfitにエクスポートした.crtファイルをuBuntuのフルパスで設定する。 私は、uBuntuのユーザーホームディレクトリに.gitconfigを作っているので以下のコマンドで編集。 (nanoの使い方はこちら)
sudo nano .gitconfig
- [https]の下にsslCAInfo=/usr/share/ca-certificates/xxxxxxxx.crt を記述する。 (xxxxxxxxはあなたがエクスポートしたファイル名に置き替えてください。ファイル名を指定せずエクスポートしていたら、多分 『DigiCert Global Root CA.crt』ですね。 私のファイル名はスペースを消してエクスポートしたのでファイル名が異なります。)
- 『Ctrl+X』–>『y(変更を保存して終了)』
- これで私はgit clone出来ました。
おまけ
nanoを使ったり、ファイルの場所を決めたりするのが面倒くさい場合は、以下の様にすると.gitconfigが無ければ自動で作りcrtファイルを設定できると思います。
git config --global https.sslCAInfo /usr/share/ca-certificates/DigiCert Global Root CA.crt
設定されているか確認する方法
–globalオプションを付けるとグローバルに設定されているものの表示。 –globalオプション無しの場合は、ローカル設定とグローバル設定の両方を表示するそうです。
git config --global -l git config -l
コメント