Migrazione da Trac / SVN a DVCS

2

Il progetto al momento sto lavorando utilizza Trac, con integrazione SVN. Ha funzionato benissimo fino ad ora. Ora, tuttavia, abbiamo assunto alcuni sviluppatori aggiuntivi e stiamo riscontrando problemi con la ramificazione e la fusione. Per questo motivo, penso che sia necessario passare a un sistema di controllo delle versioni distribuito.

Il problema è che Trac è strettamente integrato con il repository SVN. Abbiamo una stretta integrazione tra i ticket e i numeri di revisione delle modifiche al codice corrispondenti a quei ticket. Inoltre abbiamo una wiki di supporto che ha molti dati che aiutano la tecnologia. team di supporto. C'è un modo per migrare a git o mercurial senza perdere i vantaggi di Trac? Ho esaminato il plugin git per Trac e non sono sicuro di come funzioni correttamente. Qualcuno qui l'ha usato con un progetto che è stato migrato da SVN?

EDIT: Devo notare che la priorità più importante per noi è mantenere i collegamenti tra i ticket Trac e i corrispondenti changeset in SVN. Questo è uno strumento che usiamo ogni giorno e fornisce un modo semplice per saltare alle modifiche al codice durante la revisione dei biglietti. Sarebbe bello avere la migrazione Wiki, ma se non è possibile, possiamo continuare a eseguire il vecchio sistema mentre scriviamo una specie di script one-off per migrare il contenuto.

    
posta quanticle 20.04.2012 - 05:34
fonte

2 risposte

1

Ho usato Trac + SVN per molto tempo e mi è piaciuto molto. Penso che sia una soluzione altamente competitiva e (anche se attualmente utilizzo Hg) ci penserei due volte sul cambiamento.

Potrebbe valere la pena prendersi un po 'di tempo per esaminare quali altri fattori potrebbero causare problemi. Guardare oltre il puramente tecnico e considerare la struttura del team e l'organizzazione, le personalità, i processi e le strutture di comunicazione.

Ad esempio, è possibile per tutti (per quanto possibile) eseguire il commit su / trunk anziché su branching? I problemi di integrazione saranno trovati e risolti molto più velocemente se lo fai. Rende inoltre molto più semplice configurare strumenti di automazione dello sviluppo come l'integrazione continua; Server di test automatici ecc.

    
risposta data 25.05.2012 - 20:08
fonte
0

La tua prima domanda dovrebbe essere "come si diramano / si fondono meglio" piuttosto che "Ho sentito cose positive su cool tech x, provalo". Se vuoi davvero il secondo, allora dovresti creare un sistema di test / valutazione e assicurarti che non solo risolva i problemi che hai, ma anche che non presenti diversi problemi.

Quindi perché svn unisce un problema del genere per te? Spero che tu stia eseguendo una versione successiva (1.5+) poiché ho visto le aziende mantenere 1.3 per anni.

L'unione in SVN funziona, non è interrotta, quindi quali sono i problemi che stanno avendo i tuoi nuovi sviluppatori (presumo che i vecchi stiano funzionando bene ...). Hanno bisogno di essere educati su come usare meglio il sistema. Sappiamo tutti che qualsiasi sistema può essere rotto da "utenti stupidi", questi ragazzi stanno verificando semplicemente sovrascrivendo i conflitti con il loro codice? Non riescono a fondersi con l'opzione giusta? Avete un reinserimento di reintegrazione e non chiudono i loro vecchi rami dopo un reintegro?

    
risposta data 23.08.2012 - 23:59
fonte

Leggi altre domande sui tag