Git と連携するようにプロキシを構成する
- Git でサポートされているプロキシプロトコル
- Git コマンドで HTTP プロキシを使用する
- Git コマンドで HTTPS プロキシを使用する
- Git 構成ファイルでプロキシを永続的に構成する
- Git リポジトリのプロキシ設定を削除する
-
Git で
SOCKS
プロキシを構成する
この記事では、さまざまなプロキシで動作するように Git を構成する方法について説明します。通常、企業のファイアウォールの背後で作業しているときに Git にアクセスするのは困難です。
Git がサポートするプロキシのいくつか、それらを構成する方法、および使い捨てのコマンドラインにプロキシをフィードする方法について説明します。はじめましょう。
Git でサポートされているプロキシプロトコル
Git は次のプロキシをサポートしています。
- HTTP
- HTTPS
- SOCKS4
- SOCKS5
Git コマンドで HTTP プロキシを使用する
通常、プロキシを使用するように Git 構成ファイルを編集します。ただし、Git を使用すると、プロキシを端末にフィードしてすばやく使用できます。
コマンドラインでの HTTP プロキシの例を次に示します。
$ git config --global http.proxy http://username:password@proxy_server.com:port
特定のドメインを使用するシナリオでは、次のようにコマンドを実行します。
$ git config --global http.http://specific_domain.com.proxy http://username:password@proxy_server.com:port
http.proxy
の間にドメインを追加し、完全なプロキシ URL をフィードしていることに注意してください。完全な URL により、Git はプロトコルを自動的に認識して実行できます。
Git コマンドで HTTPS プロキシを使用する
ファイアウォールの背後で作業しているシナリオでは、HTTPS プロキシプロトコルのコマンドを実行する方法を次に示します。
$ git config --global http.https://specific_domain.com.proxy http://username:password@proxy_server.com:port
URL は http.proxy
の間にありますが、http://specific_domain.com
から https://specific_domain.com
への変更に注意してください。
以下に示すように、SSL 検証を無効にして、問題を回避できます。
$ git config --global http.https://specific_domain.com.sslVerify false
Git 構成ファイルでプロキシを永続的に構成する
上記の設定を Git 構成ファイルに永続的に保存できます。 --global
スイッチを使用して、すべてのユーザーと接続の構成を設定します。
--Global
スイッチでグローバルプロキシを設定する
プロキシを通過するためにすべての Git アクションが必要な場合は、次を実行します。
$ git config --global http.proxy http://username:password@proxy_server.com:port
特定のドメインのプロキシを設定する
特定のドメインをプロキシ経由で接続する場合は、以下のコマンドを実行します。
$ git config --global http.https://domain.com.proxy http://username:password@proxy_server.com:port
HTTPS 検証を無効にする
このエラーメッセージ unable to access 'https://...': Unknown SSL protocol error in connection to ...:443
が表示された場合は、以下に示すように SSL 検証をオフに切り替えることができます。
$ git -c http.sslVerify=false clone https://domain.com/example.git
または、以下に示すように、一緒に無効にすることもできます。
$ git config http.sslVerify false
Git リポジトリのプロキシ設定を削除する
以下のコマンドを使用して、リポジトリに接続されているすべてのプロキシを一覧表示します。
$ git config --get-regexp http.*
以下の構文のいずれかを使用して、プロキシを削除できます。
$ git config --unset http.proxy
$ git config --unset http.https://domain.com.proxy
また
$ git config --unset http.sslVerify
$ git config --unset http.https://domain.com.sslVerify
以下に示すように、global
スイッチを追加して、すべてのリポジトリからプロキシ設定を削除できます。
$ git config --global --unset http.proxy
$ git config --global --unset http.https://domain.com.proxy
Git で SOCKS
プロキシを構成する
前述のように、Git は socks5://
および socks4://
プロトコルをサポートしています。
以下のコマンドを実行して、SOCKS
プロトコルを構成します。
$ git config --global http.proxy socks5://proxy_server.com:port
特定のドメインについて、次を実行します。
$ git config --global http.https://domain.com.proxy socks5://proxy_server.com:port
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn