Establecer proxy para Microsoft Git Provider en Visual Studio

Tengo que usar el proxy http para conectarme al server de Git. Puedo configurarlo a través de Git Bash y usarlo también a través del siguiente command:

git config --global http.proxy http://proxyuser:proxypwd@proxy.server.com:8080 

Sin embargo, estoy usando la integración de Microsoft Git Provider con Visual Studio. Y no puedo configurar el proxy en ninguna parte para conectarme al server de Git. ¿Hay alguna forma de que pueda save los detalles del proxy para Microsoft Git Provider en Visual Studio?

Puede establecer un proxy para Visual Studio como en https://msdn.microsoft.com/en-us/library/dn771556.aspx :

Busque devenv.exe.config (el file de configuration devenv.exe) en:% ProgramFiles% \ Microsoft Visual Studio 14.0 \ Common7 \ IDE (o% ProgramFiles (x86)% \ Microsoft Visual Studio 14.0 \ Common7 \ IDE).

En el file de configuration, busque el bloque <system.net> y añada este código: XML

 <defaultProxy enabled="true" useDefaultCnetworkingentials="true"> <proxy bypassonlocal="True" proxyaddress=" HYPERLINK "http://<yourproxy:port#" http://<yourproxy:port#>"/> </defaultProxy> 

Debe insert la dirección proxy correcta para su networking en proxyaddress = "http: //.

No hay una forma directa de configurar un proxy Git en Visual Studio

No necesita configurar nada en Visual Studio para configurar el proxy de Git, de hecho, no he encontrado ninguna manera de hacerlo en Visual Studio directamente, y la respuesta alternativa sobre el uso de devenv.exe.config estaba no personalmente capaz de llegar al trabajo.

Sin embargo, hay una solución fácil

Visual Studio instalará Git para Windows siempre y cuando tenga Git marcada durante la installation (las últimas versiones tienen esto por defecto). Una vez que Git para Windows (o Git en general en cualquier sistema operativo) está instalado, puede configurar fácilmente la configuration del proxy global de Git directamente en cualquier command-line, console o window de Powershell.

De hecho, puede abrir un command o request de Powershell directamente en Visual Studio con Tools/NuGet Package Manager/Package Manager Console .

Si Git está instalado, puedes escribir git en cualquier línea de command y obtendrás una list de todos los commands de git. Si esto no sucede, puede instalar directamente Git para Windows; recomendaría hacerlo como parte de la installation de la aplicación GUI de Git Extensions, pero su millaje puede variar.

Los commands de git en particular que necesitas son:

 git config --global http.proxy http://USER:PASSWORD@URL:PORT git config --global https.proxy http://USER:PASSWORD@URL:PORT 

Dónde:

  • La dirección proxy probablemente sea http:// y no https://
  • USER: PASSWORD @ es el nombre de usuario y contraseña si es necesario para su proxy
  • URL es el nombre de dominio completo del proxy
  • PORT es el puerto del proxy, y puede ser diferente para http y https

Esto configurará su proxy en un file de configuration global en su carpeta "MyDocuments". El file puede tener un nombre diferente o ubicarse en otro lugar según su sistema operativo y otros factores. Siempre puede ver este file y editar las secciones y los pares key / valor directamente con el siguiente command:

 git config --global -e 

Esto abrirá la configuration global en la configuration del editor actual en Git, o posiblemente el editor de text pnetworkingeterminado del sistema. También puede ver el file de configuration para cualquier repository dado al estar en el directory repo y dejando fuera del indicador --global .

Después de configurar el proxy, debería ver algo como lo siguiente como parte del file:

 [http] proxy = <http://user:pass@url:port> [https] proxy = <http://user:pass@url:port> 

Puede ingresar estos valores directamente en lugar de usar los commands de configuration, o puede eliminarlos para eliminar el proxy de la configuration.

Nota: Este file es también donde se almacenan user.name y user.email que se usan para commits. Consulte la sección [user] .

Otras configuraciones útiles de Git para proxy

1. También puede dejar desactivado el --global o replacelo por --local si desea configurar el proxy para el repository local actual (debe estar en el directory repo al emitir el command).

2. Además, puede configurar un proxy para solo una URL específica de la siguiente manera:

 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> 

Tenga en count que se debe usar la URL completa (es decir, http:// o https:// en el frente).

3. Además, si alguna vez tiene varios repos remotos, por ejemplo origin y upstream , que necesitan diferentes proxies, puede establecer un proxy para uno específicamente.

 git config --global http.upstream.proxy <http://user:pass@url:port> git config --global https.upstream.proxy <http://user:pass@url:port> 

4. Puede establecer el proxy en nulo sustituyendo "" por la URL proxy. Esto puede ser útil si, por ejemplo, desea establecer el proxy globalmente, pero luego excluir una URL específica que está detrás del firewall de su compañía (como una empresa, versión local de Github), y el proxy no maneja el local direcciones correctamente Esto también puede ser útil con localhost y otras direcciones especiales o direcciones IP directas.

5. Puede verificar qué es el proxy para una URL determinada con lo siguiente:

 git config --get-urlmatch http.proxy <any random full URL> 

por ejemplo:

 git config --get-urlmatch http.proxy https://github.com