Quali sono le migliori pratiche per spostarsi tra i sistemi di controllo della versione?

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

  •  09-06-2019
  •  | 
  •  

Domanda

Sono presenti circa 200 progetti nei cv e almeno 100 progetti nei vss.Alcuni sono codici inattivi in ​​modalità manutenzione.Alcune sono app legacy.Alcune sono vecchie app non più in uso.Circa il 10% è in fase di sviluppo attivo.Il piano è di spostare tutto per rispettare la fine del 2009.

Qualcuno ha fatto una migrazione di grandi dimensioni come questa?

Qualcuno ha incontrato le migliori pratiche per passare da CVS a Perforce?O una migrazione simile.Qualche trucco a cui prestare attenzione?

È stato utile?

Soluzione

Per quanto riguarda VSS, sono disponibili strumenti di conversione per facilitare la migrazione.Possono per lo più mantenere la cronologia delle versioni (ci sono avvertenze spiegate nel file Leggimi e nella documentazione).Ho migrato oltre 50 progetti VSS in Perforce utilizzando lo strumento VSS to Perforce.Ottenere i dati da VSS può essere un po' complicato e non particolarmente veloce, ma funziona.Se hai accesso diretto ai dischi (ad es.non su una condivisione di rete) nel repository VSS, la conversione può avvenire molto più rapidamente.È possibile trovare informazioni sugli script Qui.

C'è una pagina simile per CVS per forzare la conversione Qui, anche se non ho esperienza diretta in merito.Questi collegamenti sono buoni punti di partenza.Puoi anche effettuare ricerche nelle mailing list di Perforce nella Knowledge Base di Perforce Qui.Sono abbastanza sicuro che potresti trovare alcune informazioni sulla conversione negli archivi della mailing list.

Migra prima i tuoi vecchi progetti.Puoi assicurarti che il tuo processo funzioni.Quando abbiamo migrato il codice attivo su Perforce, ho impiegato un fine settimana e sostanzialmente ho bloccato l'accesso ai server e spostato il codice su Perforce.Onestamente, è stata una migrazione piuttosto semplice e quando le persone sono tornate lunedì erano pronte a partire.Potresti pensare di preparare i tuoi dipendenti con i cheat sheet di Perforce dopo aver iniziato a eseguire la migrazione.

I trucchi più grandi potrebbero effettivamente essere preparare i tuoi dipendenti a utilizzare Perforce.Se lo avessi fatto di nuovo, avrei prima migrato i nostri progetti attivi più piccoli e avrei preparato un numero minore di persone a utilizzare Perforce contemporaneamente.Di fatto, ho dovuto formare più di 120 persone il primo giorno dopo la migrazione ed è stato un po' troppo.Inoltre, assicurati di non avere più di 100 persone che accedono al tuo server per una nuova sincronizzazione il primo giorno.Abbiamo finito per disattivare il nostro server più volte durante i primi giorni.Abbiamo utilizzato un server Windows a 32 bit che non consiglierei.Ora abbiamo un server Windows a 64 bit ed è molto più robusto.Se puoi, utilizzerei effettivamente Linux come sistema operativo per il tuo server Perforce.Ancora una volta, sul sito Perforce dovrebbero esserci buone informazioni sulle prestazioni.

Altri suggerimenti

Non ho dovuto fare qualcosa di questa portata, ma ho alcune idee.Prima di tutto, inizia prendendo un progetto piccolo e non importante ed esegui la migrazione.Questo ti darà un'idea di quanti problemi ci vorranno per migrare il resto dei progetti.Subito dopo dovresti scegliere un progetto di medie dimensioni poiché potrebbero esserci problemi con la migrazione di un progetto più grande (ad esempio con rami) che potrebbero non essere evidenti su un piccolo progetto.

Assicurati di dedicare un po' di tempo a vedere quanto è facile convertire i progetti cvs in vss o viceversa.Se convertire da vss a perforce è una vera seccatura, puoi convertire vss in cvs e poi in perforce.Non sprecarci giorni interi, ma potrebbe tirarti fuori da una situazione difficile.Penso che la chiave qui sia andare incrementale.

I backup sono buoni.Periodo.

Considera una data limite e tutti i progetti inattivi e più vecchi dovrebbero essere messi fuori servizio.Controlla la revisione finale e memorizzala in Perforce.Hai davvero bisogno di un codice Visual Basic vecchio di 15 anni?

Qualunque cosa tu faccia, mantieni i vecchi repository in modalità di sola lettura da qualche parte.

Perdonami se rispondo a una domanda con una domanda, ma non lo fa Per forza fornire strumenti per questo?O quantomeno documentazione?Piccherei il mio venditore Perforce...

Considera l'idea di non migrare progetti morti e inattivi.Metti semplicemente i loro repository in modalità di sola lettura.I dati saranno ancora disponibili se necessari e risparmierai il tempo necessario per migrarli.Basta migrare il 10% in uso.Documentare accuratamente il processo.

Se uno dei progetti non migrati viene resuscitato in futuro, puoi facilmente migrarlo utilizzando la documentazione come riferimento.

Abbiamo migrato il nostro repository svn con uno strumento che abbiamo scritto e abbiamo appena effettuato la revisione principale dei nostri progetti starteam.

Fai attenzione alle differenze tra i check-in di file singoli (CVS) e i changeset multi-file (Perforce).

Fai attenzione alle filiali: spazio separato (CVS) vs.rami nello spazio del percorso file (Perforce).

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