SVN distribuito?

4

Lavoro per una grande organizzazione burocratica (e paranoica della sicurezza) che fornisce SVN per i suoi team di sviluppo da utilizzare.

Sto lavorando con un fornitore di terze parti (sul loro sito) e attualmente condividiamo il codice tramite esportazione SVN e file di patch. L'unico modo che ho per il trasferimento di file è tramite una casella di ricezione FTP o e-mail. Mi piacerebbe un modo migliore per lavorare.

Attualmente sto facendo pressioni per ottenere una sorta di configurazione del sistema DCVS, idealmente cloud ospitato . In caso contrario, desidero un modo migliore per gestire la sincronizzazione dei repository SVN.

Nel frattempo (o se non riesco a ottenere DCVS) come faccio a tenere due repository SVN in sincrono? Come gestisco al meglio l'esportazione del repository? Come gestisco le modifiche in entrata?

    
posta Dave Hillier 01.05.2013 - 11:25
fonte

3 risposte

6

Il modo più semplice, se hai i soldi di un'organo paranoico di sicurezza e burocratico, è quello di andare a WanDisco e compra il loro prodotto e il tempo. SVN ha sempre avuto la possibilità di sincronizzare le modifiche (è ottimo per i backup per commit), ma wandisco ha aggiunto la possibilità di eseguire anche le sincronizzazioni master master, così puoi avere una configurazione SVN completamente distribuita.

L'esecuzione di una configurazione DVCS sul cloud non supererà il tuo team di sicurezza paranoico, non da un lungo gesso. L'impostazione di un DVCS per loro sarà probabilmente troppo difficile quando si renderanno conto che non esiste un server centrale per contenere le fonti definitive.

Potrebbe comunque essere necessario gestire il sistema SVN così com'è: spesso, le terze parti non hanno accesso diretto al repository. Questo è per ragioni di sicurezza più di ogni altra cosa e mostra che non ti fidate al 100% dell'altro team - che è comune, spesso non sai nemmeno chi sono. SVN ha molti controlli di accesso che puoi applicare ad un repo, e ti consiglio di creare un repository solo per loro, quindi unire le loro modifiche al repository interno, che dovrebbe essere molto più semplice di patchs ftp .

    
risposta data 01.05.2013 - 12:19
fonte
2

Il modo più semplice , se disponi di una posizione, da cui entrambi i repository (organizzazione e fornitore) sono raggiungibili da svn-client è

Crea repository locale, in questa mappa repo due nodi any ai repository esterni (via svn: externals)

Se ti preoccupi solo del contenuto , puoi eseguire periodicamente la fusione unione dal ramo venditore al ramo organizzazione (unisci tutte le modifiche da tutte le revisioni più recenti). Se il contenuto e la cronologia sono entrambi importanti , puoi eseguire l'unione di cherry-pick (una revisione per unione).

Unita al ramo dell'organizzazione (dal tuo POV) e il commit comparirà nel repository dell'organizzazione come commit naturale

    
risposta data 01.05.2013 - 17:16
fonte
0

Il sistema di controllo della versione decentralizzata SVK utilizza il filesystem Subversion.

SVK può eseguire il mirroring e operare sui repository di Subversion.

    
risposta data 02.05.2013 - 05:38
fonte

Leggi altre domande sui tag