Sono su un laptop (Ubuntu) con una rete che utilizza proxy HTTP (sono consentite solo connessioni http).
Quando uso svn up per l'URL come 'http: // .....' tutto va bene (google chrome funziona perfettamente), ma ora devo svn su dal server con 'svn: // ....' e vedo la connessione rifiutata.
Ho impostato la configurazione proxy in/etc/Subversion/server ma non aiuta.
Qualcuno ha opinione/soluzione?
Nel /etc/Subversion/servers
stai impostando http-proxy-Host
, che non ha nulla a che fare con svn://
che si collega a un altro server in genere in esecuzione sulla porta 3690 avviato dal comando svnserve
.
Se hai accesso al server, puoi impostare svn+ssh://
come spiegato qui.
Aggiornamento : puoi anche provare a usare connect-tunnel
, che utilizza il tuo server proxy HTTPS per tunnelare le connessioni:
connect-tunnel -P proxy.company.com:8080 -T 10234:svn.example.com:3690
Quindi useresti
svn checkout svn://localhost:10234/path/to/trunk
Ok, questo dovrebbe essere davvero facile:
$ Sudo vi /etc/Subversion/servers
Modifica il file:
[Global]
http-proxy-Host=my.proxy.com
http-proxy-port=3128
Salvalo, esegui di nuovo svn
e funzionerà.
Se riesci a ottenere SSH, puoi utilizzare un server SVN SSH inoltrato dalla porta.
Uso SSHs -L
( o -R
, Dimentico, mi confonde sempre) fare un tunnel ssh in modo che
127.0.0.1:3690
si sta davvero connettendo al telecomando: 3690 sul tunnel ssh, e quindi puoi usarlo tramite
svn co svn://127.0.0.1/....
Va bene, questo argomento è in qualche modo obsoleto, ma poiché l'ho trovato su Google e ho una soluzione, questo potrebbe essere interessante per qualcuno:
Fondamentalmente (ovviamente) questo non è possibile su tutti i proxy http ma funziona su proxy che consentono la connessione http sulla porta 3690. Questo metodo viene utilizzato dai proxy http sulla porta 443 per fornire un modo per connessioni https sicure. Se l'amministratore configura il proxy per aprire la porta 3690 per http connect, è possibile configurare il computer locale per stabilire un tunnel attraverso il proxy.
Avevo solo bisogno di controllare alcuni file da svn.openwrt.org all'interno della nostra rete aziendale. Una soluzione semplice per creare un tunnel è l'aggiunta della seguente riga a/etc/hosts
127.0.0.1 svn.openwrt.org
Successivamente, puoi utilizzare socat per creare un tunnel tcp verso una porta locale:
mentre vero; do socat tcp-Listen: proxy 3690: proxy.at.your.company: svn.openwrt.org: 3690; fatto
È necessario eseguire il comando come root. Apre la porta locale 3690 e alla connessione crea un tunnel per svn.openwrt.org sulla stessa porta.
Sostituisci semplicemente gli indirizzi di porta e server in base alle tue esigenze.
quando usi l'URI svn: // usa la porta 3690 e probabilmente non userà il proxy http
svn: // non parla http, quindi non c'è nulla che un proxy http possa fare.
Qualche motivo per cui http non funziona? Hai considerato https? Se ne hai davvero bisogno, probabilmente devi avere la porta 3690 aperta nel tuo firewall.
Se stai usando l'installazione SVN standard, la connessione svn: // funzionerà sulla porta tcpip 3690 e quindi è praticamente impossibile connettersi a meno che tu non modifichi la configurazione della tua rete (hai detto che è consentito solo il traffico HTTP) o installi il modulo http e Apache sul server che ospita il tuo server SVN.