Como configurar um proxy HTTP para svn

95

Quero verificar o código do repositório http://code.sixapart.com/svn/perlbal/ . Só consigo acessar a url do repositório configurando um proxy. Acho que, se eu quiser obter o código da mesma URL por svn, também preciso configurar um proxy. Então, alguém de vocês poderia me dizer como configurar um proxy HTTP no svn?

A propósito, eu uso o svncliente de linha de comando no Linux.

Haiyuan Zhang
fonte

Respostas:

126

Você já viu a entrada do FAQ E se eu estiver usando um proxy? ?

... edite seu arquivo de configuração de "servidores" para indicar qual proxy usar. A localização dos arquivos depende do seu sistema operacional. No Linux ou Unix, ele está localizado no diretório "~ / .subversion". No Windows está em "% APPDATA% \ Subversion". (Tente "echo% APPDATA%", observe que este é um diretório oculto.)

Para mim, isso envolveu remover o comentário e definir as seguintes linhas:

#http-proxy-host=my.proxy
#http-proxy-port=80
#http-proxy-username=[username]
#http-proxy-password=[password]
Vendedor rico
fonte
Alguém sabe se há uma maneira de configurá-lo para tentar o proxy e voltar a usar a conexão de rede básica se o proxy não estiver disponível? Eu tenho um proxy no trabalho, mas quando estou remoto, gostaria de poder usar o SVN sem ter que abrir o arquivo de configuração e comentar as linhas do proxy.
Erik Mitchell
1
Para mim, a solução Kimvais abaixo ajudou. Tive que descomentar a seção logo abaixo de '[global]'. Inicialmente, eu havia removido o comentário das mesmas linhas em sua primeira ocorrência, o que não ajudou.
Devesh de
@ErikMitchell: Crie duas versões do arquivo de configuração e scripts que permitem a troca. Leia a documentação do seu sistema operacional como conectar-se ao mecanismo de descoberta de rede e executar o script correto quando o seu laptop perceber onde ele está.
Aaron Digulla
2
Funciona para mim, mas a senha permanece armazenada como texto simples. Eu não quero que minha senha seja exposta assim. Existe uma maneira de contornar isso?
Pmt
62

Você pode encontrar as instruções aqui . Basicamente, você apenas adiciona

[global]
http-proxy-host = ip.add.re.ss
http-proxy-port = 3128
http-proxy-compression = no

ao seu ~/.subversion/serversarquivo.

Kimvais
fonte
7
Esta é a configuração do lado do cliente. O arquivo 'servidores' significa configurações para se conectar aos servidores. Consulte svnbook.red-bean.com/en/1.1/ch07.html#svn-ch-7-sect-1.3.1
Kimvais
último link do svnbook (v1.7) para a configuração do arquivo "servidores": svnbook.red-bean.com/en/1.7/…
michael
11

No Windows 7, você pode ter que editar este arquivo

C: \ Users \ <UserName> \ AppData \ Roaming \ Subversion \ servers

[global]
http-proxy-host = ip.add.re.ss
http-proxy-port = 3128
sdafjhjh
fonte
8

Existem duas abordagens comuns para isso:

Se você estiver no Windows, também pode gravar http-proxy-opções no Registro do Windows . É muito útil se você precisar aplicar configurações de proxy no ambiente do Active Directory por meio de objetos de política de grupo.

bahrep
fonte
1
No Linux você pode usar alias svn-my-proxy='svn --config-option ...'para poder usar svn-my-proxy co http://svn/repo/trunk. Isso permite que você alterne facilmente entre as configurações proxy ( svn-my-proxy co) e não proxy ( svn co), dependendo da rede em que sua máquina está no momento. Você pode adicionar o aliascomando ao seu ~/.bashrcpara ser recriado no próximo login do bash. Me ajuda muito entre minha rede de trabalho e minha rede doméstica!
Drew Anderson
0

No TortoiseSVN você pode configurar o servidor proxy em Configurações => Rede

user3092818
fonte
Seria muito bom se você pudesse adicionar uma captura de tela
Petter Friberg
-2

A maioria dos * nixen entende a variável de ambiente 'http_proxy' ao realizar solicitações da web.

export http_proxy=http://my-proxy-server.com:8080/
svn co http://code.sixapart.com/svn/perlball/

deve fazer o truque. A maioria das bibliotecas http verifica esta (e outras) variáveis ​​de ambiente.

Petesh
fonte
25
Infelizmente, o Subversion ainda não honra http_proxy, e provavelmente nunca o fará. Veja o problema em subversion.tigris.org/issues/show_bug.cgi?id=1327
Stefan Lasiewski
4
Isso é simplesmente épico . Fico feliz em saber que esse é o caso, mas é melhor saber a maneira certa de fazer isso também
Petesh,
2
Obrigado pelo aviso. Estou curioso: no Ubuntu 14.10, a http_proxyconvenção parece funcionar (SVN v1.8.10). Mas isso não acontece no Centos 6.6 (SVN v1.6.11). Eu procurei em seu changelog, mas não encontrei nada claro o suficiente. Alguma ideia se foi corrigido para sempre?
Anto
2
O svn 1.8 mudou a forma como a rede http opera quase completamente. Adicionar suporte para http_proxy pode ter sido um efeito colateral.
Petesh