linux tutorial Esportare il repository SVN tramite FTP su un server remoto




versioning git tutorial (3)

Ho scritto questo tempo fa - forse sarebbe di qualche utilità qui: exup

Sto usando il seguente comando per esportare il mio repository su un percorso locale:

svn export --force svn://localhost/repo_name /share/Web/projects/project_name

C'è un modo abbastanza semplice (Linux newbie qui) per fare lo stesso sul protocollo FTP, per esportare il repository su un server remoto?

L'ultimo parametro di svn export AFAIK deve essere un percorso locale e AFAIK questo comando non supporta l'assegnazione di percorsi in forma di URL, come ad esempio:

ftp://user:[email protected]:path/

Quindi, per me dovrebbe esserci qualche script assunto qui per fare il lavoro.

Ho chiesto ad alcune persone di farlo e mi è stato suggerito che il modo più semplice è esportare il repository su un percorso locale, trasferirlo su un server FTP e quindi eliminare il percorso locale. Sfortunatamente ho fallito dopo il primo passaggio (estrai il percorso locale! :) Quindi, la domanda di supporto è, se può essere fatta al volo, o davvero deve essere suddivisa in due passaggi: esportazione + trasferimento ftp?

Qualcuno mi ha anche consigliato di installare il client SVN locale sul server remoto e di effettuare un checkout / aggiornamento semplice dal mio repository. Ma questa è una soluzione possibile solo se tutto il resto fallisce. Come voglio estrarre la struttura del repository pura, senza i file SVN, che otterrei, quando si va in questo modo.

BTW: Sto usando QNAP TS-210, un semplice dispositivo NAS, con Linux molto limitato a bordo. Quindi, molti comandi da riga di comando validi come GUI non sono disponibili per me.

EDIT : Questa è la seconda domanda nella mia "catena". Anche se mi aiuti a riuscire qui, non sarò in grado di automatizzare questo lavoro (come sono disposto a farlo) senza il tuo aiuto in questione " SVN: Forza il demone svn da eseguire con un altro utente ". Qualcuno può dare un'occhiata lì, per favore? Grazie!


non sono sicuro di FTP, ma SSH sarebbe molto più semplice e dovrebbe avere una compressione migliore. Un esempio di invio del repository su SSH può essere simile a:

svnadmin dump / percorso / su / repository | ssh -C nome utente @ nomeserver 'svnadmin -q load / percorso / su / repository / on / server'

URL ho trovato che le informazioni erano sul sito di Martin Ankerl

[aggiornare]

in base al commento di @trejder sulla domanda, per eseguire un'esportazione su ssh, la mia raccomandazione sarebbe la seguente:

svn esporta in una cartella localmente, quindi usa il seguente comando:

cd && tar czv src | ssh example.com 'tar xz'

dove src è la cartella in cui sei stato esportato e example.com è il server.

questo prenderà i file nella cartella sorgente, tar e gzip li e li invierà su ssh, quindi su ssh, estrae i file direttamente sulla macchina ....


Bene, se stai usando Linux, dovresti essere in grado di montare un ftpfs . Credo che ci fosse un modulo nel kernel di Linux per questo. Quindi penso che avresti anche bisogno di FUSE.

Fondamentalmente, se puoi montare un ftpfs , puoi scrivere la tua esportazione svn direttamente nella cartella montata.





ftp