web-dev-qa-db-ja.com

Gitプロキシバイパス

Gitは、http.proxy構成パラメーターを設定することにより、プロキシ環境で動作します。

特定のアドレスについては、プロキシをバイパスする必要があります。 no-proxy/bypass-proxy構成パラメーターはありますか?

45
yannisf

プロキシは、リモートごとにオーバーライドできます- http://git-scm.com/docs/git-config を参照してください(「http.proxy」および「remote。<name > .proxy」設定)。 「Origin」というリモートがあると仮定すると、このリモートのプロキシをバイパスするために使用できるコマンドは次のとおりです。

git config --add remote.Origin.proxy ""
68
Jan Gutvirth

特定のプロキシ(通常はローカルアドレス)をバイパスするには、次を実行するだけです。

export no_proxy=URLToIgnore

ここで、URLToIgnoreは、Gitが無視するURLです。特定の単語で終わるURLを無視することもできます。

export no_proxy=.mylocal

.mylocalで終わるすべてのURLは無視されます。複数のURLを無視するには:

export no_proxy=.mylocal URLToIgnore

永続的にするには、~/username/.bash_profileファイルに追加します。ユーザーのルートディレクトリに.bash_profileファイルが見つからない場合は、手動で作成します。

詳細: git httpプロキシを一時的に無効にする方法

26
Yas T.

Configを空の値に設定する場合は、Git 2.1.2+があることを確認してください。

git config --add remote.Origin.proxy ""

そのリモートのプロキシ(ここでは 'Origin')...を復元することに決めた場合、2.1.2(9月30日、 2014)

commit c846664 を参照してください( tanayabh

make config --addは空の値とNULL値に対して正しく動作します

現在、次のような構成ファイルがある場合、

[foo]
        baz
        bar =

そして、「git config --add foo.baz roll」のようなものを試してみると、Gitはセグメンテーション違反を起こします。さらに、「git config --add foo.bar roll」の場合、既存の空の値の後に追加するのではなく、元の値を上書きします。

問題は、git_config_set_multivar_in_file()--add、 "^$"をシミュレートするために使用される正規表現にあります。
代わりに、「a^」のような正規表現を使用します。これは、空の文字列でも空の文字列でも当てはまりません。

Segfaultを削除するには、 config.cmatches()NULL値のチェックを追加します。

5
VonC

承認済み answer gitリポジトリが手元に存在してから動作する必要があり、2番目に優れた answer はLinuxおよびMacでのみ動作します。そのため、Windowsではhttps://git-url.com/project/repo-name.gitコマンドプロンプトで次を試してください

set no_proxy=git-url.com

それから

git clone git-url.com/repo-name.git

これで、承認済みの回答を適用するためのリポジトリが作成されます。

1
Ganesh Pendyala

Windows/Unixのユーザーロールにより、コマンドラインからhttp_proxyを削除できない場合は、このアプローチを試してください-

git config -l --show-Origin

これは、階層に従ってファイルに基づいて構成を印刷します。次に、特定のファイル(ローカル.git/configフォルダーファイル)に移動し、http_proxyを更新/削除します。

お役に立てれば。

1
Riddhi Sanyal