私はGitとやり取りするのが初めてで、GitをTFSインフラストラクチャと組み合わせようとしていますが、SSL認証の問題が発生しています。 Github、VSTSはありません。 TFSはオンプレミスであるため、ローカルインストールです。
サーバー部分:
Windows Server 2016にTFS 2018をインストールし、企業の自己署名証明書を作成し、その証明書にTFS Webサービス(IISマネージャー)をバインドしました。
TFSは、HTTPSを介してのみ実行するように構成されています。 HTTPはHTTPSにリダイレクトされます。バージョン管理システムとしてGitを使用する新しいプロジェクトをセットアップしました。
クライアント部分:
2種類のWindowsクライアントがあります。 Windows 7 SP1および10 Anniversary Update、両方ともVisual Studio 2017 Enterpriseを使用。
証明書を(信頼されたルート証明機関として)インストールし、ブラウザーを介して接続しますが、プロジェクト情報を表示するものはまったくありません。ブラウザーは、証明書の信regarding性に関する警告を発しません。次に、Windows Secure Channel Libraryを使用してGit-2.15.1.2-64-bit.exeをインストールしました。
タイトルの致命的なエラーが発生していたため、Gitクライアントを構成するために ガイド に従いました。したがって、基本的には自己署名のコンテンツを抽出し、ca-bundle.crtファイルに追加しました。それらのすべて:
Powershellの「git config --list --show-Origin」コマンドを使用すると、次のリストが表示されます。file: "C:\ Program Files\Git\mingw64/etc/gifconfig" http.sslcainfo = C:/ Program Files/Git/mingw64/ssl/certs/ca-bundle.crtファイル:「C:/users/myname/.gifconfig」http.sslcainfo = C:/users/myname/ca-bundle.crt
VS2017 Team Explorerパネルからリポジトリをクローンしようとすると、「Gitは致命的なエラーで失敗しました。fatal:アクセスできません」 https://tfs.blahblah/ = ':SSL証明書の問題:ローカル発行者証明書を取得できません "
しかし、Git GUIを使用すると、別のエラーで応答します:fatal:リモート参照HEADが見つかりませんでした。
しかし、Visual Studio 2017と「ペアリング」できない場合は、何もコミットできません。
いくつかのリンクを読みましたが、それを取得できませんでした。そのため、複製としてマークする前に、特定のシステム/環境要件に注意してください。
注:そして、SSLをオフにすることを提案しないでください。すでに話したようには、企業/企業環境
チームエクスプローラーの[グローバル設定]の[Git設定]には、OpenSSLとセキュアチャネルのいずれかを選択するオプションがあります。
Visual Studio 2017(バージョン15.7プレビュー3)以降、Git Global設定でSChannelを使用すると問題が修正されました。
システム管理者サポートの2日後、私は解決策を得ました。他の人に役立つかもしれないので、ここに投稿します。 Visual Studio 2017は、エラー状態(「ローカル発行者の何とか」)のため、自己署名証明書を受け入れないようです。承認するには、ローカルCAである必要があります。手順は次のとおりです。
サーバー:
クライアント:
-----BEGIN CERTIFICATE-----publickey-----END CERTIFICATE-----
これで、リポジトリのクローンを作成できるはずです。
したがって、基本的には、証明書にはすべてのチェーン機関が含まれている必要があり、1つある必要がありますです。
次の方法で簡単な回避策を実行できます。
git config --global http.sslVerify false