Pergunta

Eu estou no laptop (Ubuntu) com uma rede que Usar proxy HTTP (apenas http conexões permitido).
Quando eu usar o SVN para url como 'http: // .....' tudo é legal (Google Chrome repositório funciona perfeito), mas agora eu preciso svn up do servidor com o 'svn: // .... 'e eu vejo conexão recusada.
Eu definir a configuração de proxy in / servidores etc / subversion / mas isso não ajuda.
Alguém tem opinião / solução?

Foi útil?

Solução

Em /etc/subversion/servers você está definindo http-proxy-host, que nada tem a ver com svn:// que se conecta a um servidor diferente normalmente executado na porta 3690 iniciada pela ordem de svnserve.

Se você tiver acesso ao servidor, você pode configurar svn+ssh:// como explicado aqui.

Atualizar : Você também pode tentar usar connect-tunnel , que usa seu servidor HTTPS proxy para conexões de túnel:

connect-tunnel -P proxy.company.com:8080 -T 10234:svn.example.com:3690

Em seguida, você usaria

svn checkout svn://localhost:10234/path/to/trunk

Outras dicas

Ok, isso deve ser realmente fácil:

$ sudo vi /etc/subversion/servers

Edite o arquivo:

[Global]
http-proxy-host=my.proxy.com
http-proxy-port=3128

salvá-lo, svn correr novamente e ele vai funcionar.

Se você pode obter SSH a ele você pode um servidor SVN SSH Port-encaminhados.

Use SSHs -L (ou -R, eu esqueço, ele sempre me confunde) para fazer um túnel ssh para que

127.0.0.1:3690 é realmente conectar a remoto: 3690 sobre o túnel ssh, e então você pode usá-lo através

svn co svn://127.0.0.1/....

Ok, este tema é um pouco desatualizado, mas como eu encontramos no Google e ter uma solução este pode ser interessante para alguém:

Basicamente (é claro) isso não é possível em todos os proxy HTTP, mas funciona em proxies permitindo http conectar na porta 3690. Esse método é usado por http proxies na porta 443 para fornecer uma maneira para conexões HTTPS seguras. Se o administrador configura o proxy para abrir a porta 3690 para http conectar você pode configurar sua máquina local para estabelecer um túnel através do proxy.

Eu só estava na necessidade de verificar alguns arquivos de svn.openwrt.org dentro de nossa rede empresas. Uma solução fácil para criar um túnel está adicionando a seguinte linha ao seu arquivo / etc / hosts

127.0.0.1 svn.openwrt.org

Em seguida, você pode usar socat para criar um túnel TCP para uma porta local:

while true; fazer socat tcp-escuta: 3690 proxy: proxy.at.your.company: svn.openwrt.org: 3690; done

Você deve executar o comando como root. Ele abre a porta local 3690 e em conexão cria um túnel para svn.openwrt.org na mesma porta.

Basta substituir os endereços de porta e do servidor em suas próprias necessidades.

quando você usa o svn: // URI que utiliza a porta 3690 e provavelmente não vai usar Proxy HTTP

svn:. // não fala http, e por isso não há nada de um proxy http poderia fazer

Qualquer razão pela qual http não funcionar? Você já pensou em https? Se você realmente precisa dele, você provavelmente tem que ter porta 3690 aberta em seu firewall.

Se você estiver usando a instalação SVN padrão svn: // conexão funcionará em tcpip porta 3690 e por isso é basicamente impossível para ligar a menos que você mudar sua configuração de rede (você disse que somente o tráfego HTTP é permitido) ou instalar o http módulo e Apache no servidor que hospeda o servidor SVN.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top