Visual Studio のチームエクスプローラーでGitHubにアクセスすると SSL証明書のエラーが発生する - Visual Studio

Visual Studio のチームエクスプローラーでGitHubにアクセスすると SSL証明書のエラーが発生する現象と対策について紹介します。

現象の確認

GitHubからローカルにリポジトリを複製します。


複製をすると以下のエラーが発生します。
エラーメッセージ
リモート リポジトリの複製を作成中にエラーが発生しました: Git failed with a fatal error.
unable to access '(GitHubのリポジトリのURL)': error setting certification verify locations:
 CAfile: C:\Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
 CApath: none
また、リポジトリの複製でエラーになった場合は、右側のチームエクスプローラには以下のエラーメッセージが表示されます。
エラーメッセージ
Failed to clone or open the repository '(リポジトリ名)'
Email support@github.com if you continue to have problems.


原因

C:\Program Files/Git/mingw64/ssl/certs/ フォルダに ca-bundle.crtの証明書が配置されていない可能性が高いです。

対処法

C:\Program Files/Git/mingw64/ssl/certs/ フォルダを確認します。フォルダ内にファイルが存在していません。


他のアプリの設定状況によっては、独自の証明書が導入されていることもあります。


ほかのフォルダにある ca-bundle.crt ファイルをコピーすることにします。今回は C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\Git\mingw32\ssl\certs フォルダの ca-bundle.crt ファイルをコピーします。


ca-bundle.crtとca-bubndle.trust.crt ファイルをC:\Program Files/Git/mingw64/ssl/certs/ フォルダにコピーしました。


ca-bundle.crtのコピー後、再度リポジトリの複製を実行します。


証明書が配置されているため、エラーは発生せず正常にリポジトリがクローンされた旨のメッセージが表示されます。


著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
掲載日: 2020-09-20
iPentec all rights reserverd.