2008-09-12 6 views
25

Je suis un développeur unique qui cherche à quitter Visual Source Safe et à passer à svn.Meilleur moyen de migrer de VSS vers Subversion?

Une recherche rapide fait apparaître plusieurs outils, mais je ne vois pas de gagnant clair et je ne peux pas me permettre de passer beaucoup de temps à tester différents outils.

Quelqu'un at-il fait cela avec succès, et peut recommander une méthode?

Répondre

28

Je recommande simplement d'ajouter votre code à un nouveau dépôt Subversion plutôt que d'importer à partir de VSS. VSS a un modèle de contrôle de version compliqué qui ne se traduit pas bien à de nombreux autres systèmes, et le démarrage juste frais est généralement le meilleur moyen d'éviter de prendre ce fouillis avec vous.

Si vous avez besoin de conserver l'historique, rendez votre référentiel VSS en lecture seule.

+2

Assurez-vous d'effacer tous les fichiers crufty que VSS laisse dans votre caisse avant d'importer dans SVN, et assurez-vous également que tous les fichiers générés sont partis aussi bien. – jodonnell

+6

Je ne suis pas du tout d'accord avec ça. Ma société utilise VSS depuis près de 10 ans et il y aurait des tonnes d'histoire manquante si nous venions juste de "repartir à zéro". Je suis d'accord que VSS est une poubelle mais c'est mieux que rien et jeter des années d'histoire de fichier est une grosse erreur. –

+8

Il suffit de geler le contenu dans VSS pour référence future (c'est-à-dire en lecture seule) (que vous ne regarderez probablement jamais!) Et recommencez avec Subversion. –

0

J'ai utilisé un script (je ne me souviens plus lequel) pour aider à la conversion de VSS en SVN. C'était un peu douloureux et pointilleux mais a fini par travailler, et a gardé toute l'histoire. Je devais garder toute l'histoire pour des raisons politiques à l'époque; Si j'avais eu mon chemin, j'aurais probablement jeté l'histoire et importé tout le code dans SVN.

Aussi pour des raisons politiques, j'ai écrit des scripts vraiment hacky qui ont maintenu VSS à jour avec les changements de Subversion. Ceux-ci ont fonctionné pendant un certain temps mais ont continué à casser chaque semaine ou deux, jusqu'à ce que quelqu'un ait renommé un annuaire ou quelque chose et l'ensemble s'est effondré. À ce moment-là, il était normal de continuer à utiliser Subversion.

1

Dans mon travail actuel, nous venons de créer un référentiel subversion, de configurer des scripts hook pour ignorer tous les fichiers vss et générés, puis de commencer à importer les différents projets avec tortoiseSVN. Travaillé assez décent, nous étions opérationnels en quelques heures.

7

Nous avons récemment effectué cette migration au travail. Je suggère fortement:

  1. Ajoutez simplement le nouveau code de VSS, prenez le coup que l'histoire pré-svn devra rester dans l'ancien dépôt VSS.
  2. Si votre référentiel VSS est toujours utilisé après le vidage de code initial, migrez les modifications à l'aide de Vendor Branches. Supposons que votre référentiel VSS soit un fournisseur et utilise des balises datées pour fusionner les modifications dans le référentiel SVN.

Un peu plus en détail here.

1

Je suis totalement d'accord avec la réponse de Jon Galloway. J'ai également essayé d'utiliser vss2svn mais j'ai trouvé qu'il y avait beaucoup de problèmes avec le dépôt importé et à la fin j'ai décidé que cela ne valait pas l'effort nécessaire pour le nettoyer. Nous venons d'importer une copie du code dans subversion et sommes retournés à VSS dans les rares occasions où une ancienne version du code devait être consultée.

Dans mon entreprise précédente, nous utilisions la même approche pour migrer de ClearCase vers Subversion, et je ne me souviens pas de l'occasion où nous devions retourner dans ClearCase pour regarder l'historique. Le plus gros problème consistait à amener tout le monde à basculer vers le nouveau référentiel en même temps, mais en tant que développeur unique, vous ne devriez avoir aucun problème là-bas!

1

Nous avons téléchargé et testé plusieurs outils de migration et je recommanderais Polarion SVNImporter. Nous l'avons utilisé pour effectuer une migration sélective de près d'un Gb depuis un dépôt VSS6 vers Subversion. Comme le code source est disponible, nous avons pu le patcher et l'adapter à nos besoins spécifiques (détection de fichiers liés).

8

La version CodePlex de VSStoSVN est l'une des meilleures que j'ai trouvées. J'ai eu de très mauvais résultats avec la version PumaCode, mais celle-ci s'est bien déroulée.

http://vss2svn.codeplex.com/

2

Je l'ai utilisé vss2svn avec grand succès.

6

Ma société a développé une source sûre à l'outil de migration Subversion: http://www.abstrakti.com/en-US/Products/Krepost

Cet outil a été développé après avoir des problèmes avec tous les outils, quand nous avons dû migrer le référentiel d'un client. Faites-moi savoir si vous avez des problèmes, je serai heureux de vous aider.

Eric.

+1

Je vais essayer ça. Malgré notre abandon antérieur de VSS, sans conversion, nous avons juste décidé que nous aimerions vraiment avoir quelques infos. La société Abstrakti.com, ci-dessus, semble se spécialiser dans la conversion de VSS, c'est-à-dire qu'ils ont également une application pour VSS à GIT, Castellum. Juste ce mois-ci, ils ont eu une mise à jour de maintenance! – AnneTheAgile

+1

Je l'ai essayé avec un ancien dépôt VSS, ça a marché comme un charme! – tcbrazil

Questions connexes