我必须使用http代理连接到Git服务器。我可以通过Git Bash设置它并通过以下命令使用它:
git config --global http.proxy http://proxyuser:proxypwd@proxy.server.com:8080
但是,我正在使用Microsoft Git Provider与Visual Studio集成。我无法在任何地方设置代理连接到Git服务器。有没有办法可以在Visual Studio中保存Microsoft Git Provider的代理详细信息?
答案 0 :(得分:11)
你不需要在Visual Studio中设置任何东西来设置Git代理 - 事实上,我没有找到任何方法直接在Visual Studio中这样做,以及使用devenv.exe的替代答案。我个人无法上班。
只要您在安装期间对Git进行了勾选检查,Visual Studio就会安装Git for Windows(默认情况下,最新版本都有此选项)。一旦安装了Git for Windows(或任何操作系统上的Git),您就可以在任何命令行,控制台或Powershell窗口中直接轻松设置全局Git代理设置。
实际上,您可以使用Tools/NuGet Package Manager/Package Manager Console
直接在Visual Studio中打开命令或Powershell提示。
如果安装了Git,您可以在任何命令行键入git
,您将获得所有git命令的列表。如果没有发生这种情况,您可以直接安装Git for Windows - 我建议将其作为安装Git Extensions GUI应用程序的一部分,但您的里程可能会有所不同。
您需要的git命令是:
git config --global http.proxy http://USER:PASSWORD@URL:PORT git config --global https.proxy http://USER:PASSWORD@URL:PORT
其中:
http://
且不 https://
这将在“MyDocuments”文件夹中的全局配置文件中设置代理。根据您的操作系统和其他因素,该文件可能以不同的名称命名或放置在其他位置。您始终可以使用以下命令查看此文件并直接编辑部分和键/值对:
git config --global -e
这将在Git中的当前编辑器设置中打开全局配置,或者可能是系统默认文本编辑器。您还可以通过位于repo目录中并查看--global
标志来查看任何给定仓库的配置文件。
设置代理后,您应该看到以下内容作为文件的一部分:
[http] proxy = <http://user:pass@url:port> [https] proxy = <http://user:pass@url:port>
您可以直接输入这些值,而不是使用config命令,或者可以删除它们以从配置中删除代理。
注意:此文件也是存储用于提交的user.name和user.email的位置 - 请参阅[user]
部分。
1.如果要为当前本地存储设置代理,也可以不使用--global
或将其替换为--local
(发出命令时必须位于repo目录中)。
2.此外,您可以按如下方式为特定URL设置代理:
git config --global http.<full URL to apply proxy>.proxy <http://user:pass@url:port> git config --global https.<full URL to apply proxy>.proxy <http://user:pass@url:port>
请注意,应使用完整的网址(即前面的http://
或https://
)。
3.此外,如果您有多个远程回购,例如origin
和upstream
,需要不同的代理,您可以专门设置一个代理。
git config --global http.upstream.proxy <http://user:pass@url:port> git config --global https.upstream.proxy <http://user:pass@url:port>
4.您可以通过将""
替换为代理URL来将代理设置为null。例如,如果您想要全局设置代理,然后排除公司防火墙后面的特定URL(例如企业,Github的内部版本),并且代理不处理本地代理,这可能很有用。地址正确。这对localhost和其他特殊地址或直接IP地址也有帮助。
5.您可以使用以下内容检查给定URL的代理:
git config --get-urlmatch http.proxy <any random full URL>
例如:
git config --get-urlmatch http.proxy https://github.com
答案 1 :(得分:5)
您可以像https://msdn.microsoft.com/en-us/library/dn771556.aspx中一样为Visual Studio设置代理:
在以下位置找到devenv.exe.config(devenv.exe配置文件):%ProgramFiles%\ Microsoft Visual Studio 14.0 \ Common7 \ IDE(或%ProgramFiles(x86)%\ Microsoft Visual Studio 14.0 \ Common7 \ IDE)。
在配置文件中,找到
'admin_comments' => $this->model_sale_order->getOrderHistories( $result['order_id']);
块,并添加以下代码: XML
<system.net>
您必须在proxyaddress =&#34; http://。
中为您的网络插入正确的代理地址
答案 2 :(得分:1)
如果VS 2017可以帮助某人,则该文件夹具有一个名为“ gitconfig”的文件夹(%ProgramFiles%\ Microsoft Visual Studio \ 2017 \ Professional \ Common7 \ IDE \ CommonExtensions \ Microsoft \ TeamFoundation \ Team Explorer \ Git \ mingw32 \ etc)作为“ C:\ Users [User] .gitconfig”中的文件,您可以在其中设置VS的代理配置。
答案 3 :(得分:1)
另一种方法是转到用户文件夹c:\users\<account name>
(在我的情况下为c:\users\danielj
)并创建一个名为.gitconfig
的文件。
粘贴以下内容:
[user]
name = <your name>
[user]
email = <your email address>
[http]
sslVerify = false
proxy = "http://<username>%40<domain e.g. domain.com>:#<password>@<proxy server name>:<port>"
[https]
sslVerify = false