Sono in grado di eseguire un aggiornamento SVN su una copia di lavoro in Linux ottenendo “Impossibile aprire una sessione ra_local a URL” l'errore

StackOverflow https://stackoverflow.com/questions/2087634

Domanda

Ho un server Linux, che contiene 10 repository. Ho installato una quota di samba per consentire un facile accesso alla directory repository in modo che io possa creare repository tramite Windows utilizzando Create repository here command... di TortoiseSVN.

Il problema è che i repository sono stati installati attraverso i percorsi di Windows file:/// e non quelli HTTP usando TortoiseSVN. Sto utilizzando il modulo Apache HTTP SVN. Così normalmente vorrei specificare il repository tramite http://servername/svn/myrepos.

Questo è tutto bene in Windows, ma ho bisogno di utilizzare anche il client Linux SVN e sto cercando di fare quanto segue:

/usr/bin/svn update /path/to/working/copy

Ma im ottenendo il seguente errore:

svn: Unable to open an ra_local session to URL
svn: Unable to open repository 'file:///R:/myrepos/trunk'

Sembra che l'errore si riferisce ad esso cercando di trovare il repository di corrispondenza per la copia di lavoro ma è utilizzando il file di Windows:. /// URL e dovrebbe essere utilizzando quelli HTTP

Come faccio a modificare i repository in modo che essi Default per utilizzando il protocollo http?

È stato utile?

Soluzione

Non sono sicuro ho capito qual è il problema, ma se si sta cercando di continuare a utilizzare una copia di lavoro locale, mentre a cambiare l'URL che si utilizza per accedere al repository, si desidera eseguire svn switch:

svn switch --relocate file:///my/old/URL http://server/new/URL

Altri suggerimenti

Se si verifica tramite un URL è possibile aggiornare utilizzando un URL diverso. perché la notazione "percorso" è diverso su entrambi i sistemi è possibile utilizzare la stessa cassa a meno di utilizzare i protocolli svn o http. Questo non ha però nulla a che fare con la creazione di pronti contro termine al di là del fatto che è necessario esporre il repo su una delle piattaforme protocolli agnostici. Se è possibile controllare da qualsiasi client tramite http o svn allora avete impostato everythign correttamente. Hai solo bisogno di saltare la vostra cassa di distanza e check it out ancora una volta utilizzando un protocollo agnostico piattaforma.

Questo è probabilmente un problema di permessi. Ho avuto questo su una macchina Linux con client Linux sulla stessa macchina. Non puoi semplicemente cancellare lo svn locale sandboxen sulla macchina Linux e li ri-checkout?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top