De VSS vers TFS en quelques clics

Note : Pas de note
Auteur : azra Article lu 4 245 fois

Description : L'outil VSSConverterGUI permet de migrer un projet sous Visual SourceSafe vers Team Foundation Server en quelques clics. Ce tutorial illustre la procedure à suivre.




De VSS vers TFS en quelques clics


Migrer des sources issues de Visual SourceSafe vers Team Foundation Server est une opération aujourd'hui rendu simple grâce à l'outil VSSConverter.exe fourni avec toute installation de Team Explorer et largement documentée sur MSDN. Cet outil est capable de migrer n'importe quel ensemble de sources présentes dans SourceSafe tout en conservant historique, commentaires et labels.

Mais pour simplifier encore plus le processus, une initiative projet open source « CodePlex », « VSSConverterGUI » propose une interface graphique se reposant sur VSSConverter : plus besoin de taper de fastidieuses lignes de commande, toutes les opérations se font en quelques clics, de manière complètement graphique.

Attention, pour fonctionner VSSConverter (et donc VSSConverterGUI) nécessite obligatoirement que Visual SourceSafe 2005 (même pour migrer des bases issues de versions anciennes) et SQL Express soient installés sur le poste de travail dédié à la migration.

Téléchargement et installation de VSSConverterGUI


La dernière version en date de VSSConverterGUI est disponible sur CodePlex à l'adresse suivante:  http://www.codeplex.com/VssConverterGUI

Une fois celle-ci téléchargée, il suffit de la déziper et de placer l'exécutable dans le répertoire d'installation de Visual Studio 2005, au même niveau d'arborescence que l'exécutable VssConverter.exe (ex : « C:\Program Files\Microsoft Visual Studio 8\Common7\IDE »)


Objectif

Dans ce tutorial, nous allons migrer les sources du site web WebSite1 représenté ci-dessous :

Paramétrage source / cible

Pour lancer le processus de migration, la première action, bien qu'évidente, consiste à lancer l'exécutable VSSConverterGui.

La première étape consiste à sélectionner la base de données SourceSafe contenant les sources à migrer, en ciblant directement son répertoire système physique (qu'elle soit en local ou sur un partage réseau, le tout est de cibler le fichier « srcsafe.ini »). Il est impératif de disposer des identifiants d'administrateur sur cette base afin de réaliser l'opération de migration. De plus, il est fortement conseillé de la sauvegarder et de travailler sur la copie de celle-ci afin d'être sur de ne pas l'altérer, pouvoir éventuellement lancer une analyse / réparation sur celle-ci et enfin avoir la garantie qu'aucun utilisateur ne tentera de se connecter dessus pendant la migration:

Ensuite, il est nécessaire de se connecter au serveur Team Foundation cible et, la aussi, des droits d'administrateur sont requis : le compte windows avec lequel vous êtes connectés doit réussir  à accéder au serveur TFS et avoir suffisamment de droits pour s'y connecter et y ajouter des fichiers. La section du serveur se fait directement en saisissant son url complète « http(s)://url :port/ », un click sur le bouton « Validate » exécute quand à lui une tentative d'accès afin de valider que le serveur est accessible : 

Il est ensuite requis de spécifier les différentes correspondances des répertoires sources / cible à migrer. En cliquant sur le bout « Add », une popup demandant de sélectionner le répertoire source dans SourceSafe puis le répertoire cible dans Team Foundation apparaît.

Choix dans SourceSafe du répertoire source :

 

Choix dans TFS du répertoire cible :

Si vous souhaitez créer un nouveau répertoire sur le serveur Team Foundation dans lequel les sources SourceSafe doivent être déposées, vous pouvez compléter le chemin de la zone « TFS Project » en ajoutant un nom de répertoire inexistant, celui-ci sera automatiquement créé lors de la migration :

Vous pouvez ajouter autant de correspondances source / destination que vous le souhaitez. Si vous voulez profiter de la migration vers Team Foundation Server pour réorganiser l'arborescence de votre dépôt de sources, il est fortement conseillé de réaliser cette action à ce niveau, permettant ainsi à chaque répertoire SourceSafe d'être migré dans le répertoire Team Foundation Server adéquat (si vous effectuez la réorganisation après la migration, des traces de modifications seront éternellement visibles dans l'historique de chaque fichier déplacé).

Phase d'analyse

Une fois vos correspondances terminées, il est nécessaire de lancer une analyse de la base SourceSafe en sélectionnant l'option « Analyse » du menu « Tools ». Le processus d'analyse génère un rapport mettant en avant la faisabilité de migration, les différentes actions à entreprendre (libérer les fichiers en CheckOut par exemple) ainsi que les problèmes d'incompatibilité VSS/TFS détectés (notamment les pinning et sharing de fichiers).

Le rapport d'analyse est physiquement représenté par un fichier XML (incluant un XSLT de mise en page) et peux ainsi être facilement diffusé auprès des différentes équipes afin de demander l'application de correctifs pré-migration.


L'outil VSSConverterGUI permet directement de consulter en temps réel le log de l'analyse ainsi que le rapport complet une fois celle-ci terminée :


Le processus d'analyse est aussi utilisé pour identifier les login des utilisateurs de la base SourceSafe (dans l'exemple, uniquement Admin). En effet, SourceSafe utilise des comptes de connexion applicatif tandis que Team Foundation Server utilise une authentification Windows et donc des comptes NT pour fonctionner. Afin de conserver une historique juste et précise en terme d'utilisateur, il est possible (et conseillé), après l'analyse, de spécifier pour chaque compte applicatif SourceSafe le compte Windows correspondant. Cette action se fait utilisateur par utilisateur en cliquant sur le bouton « Edit » et en sélectionnant le compte NT (Windows désiré) sur la machine locale ou en parcourant l'Active Directory. Afin d'accélérer le processus, si vous souhaitez effectuer cette opération manuellement, vous pouvez directement modifier le fichier XML « UserMap.xml » créé par le processus d'analyse.

Soit :

Soit :

Phase de migration

La procédure de pré-migration est maintenant terminée, la dernière étape à effectuer est donc l'exécution pure et dure du processus de migration. Cette opération est réalisée en cliquant sur l'option « Migrate! » du menu « Tools » :

Un rapport présentant le bilan de la migration est également généré au format XML dans le but de pouvoir être diffusé / conservé.


Il ne reste plus qu'à se connecter à Team Foundation Server afin de vérifier que les sources ont belles et bien été migrées, que leurs historiques ont été conservés et que les labels ont été ré appliqués :

Attention cependant, vous pouvez remarquer ici que la date de motivation dans TFS correspond à la date d'exécution de l'assistant de migration! Pour des raisons évidentes d'intégrité, TFS est en effet incapable d'antidater un archivage. La conservation de la vraie date d'archivage issue de SourceSafe est donc conservée au travers d'un renseignement dans le champ de commentaires, sous la forme {heure date}.

Conclusion

Une seule question se pose en conclusion de ce tutorial: au vu de la simplicité du processus de migration, pourquoi attendre plus longtemps avant d'utiliser un gestionnaire de configuration beaucoup plus complet que Visual SourceSafe en termes de fonctionnalités (et encore, dans ce contexte, on ne parle que de gestion de sources) et de performances?



A Propos de l'auteur

Florent Santin (alias Azra) est consultant formateur sur l'offre Team System pour la société Winwise.

En parallèle de Team System, il s'intéresse à tout ce qui est lié au Framework .NET et plus particulièrement Workflow Foundation et ASP.NET

 

Blog de Florent

Team-System.fr / Workflow-Foundation.com 



[ Voir la fiche de azra ] - [ Voir tous les articles de azra ] - [ Contacter azra ] - [ Visiter le site de azra ]



Mots définissants ce tutorial

Mot(s) associé(s) :

migration tfs team foundation vss




Commentaire(s)

Aucun commentaire pour le moment

Ajouter un commentaire :

Pour ajouter un commentaire, vous devez vous identifier :
Si vous n'avez pas encore de compte sur un des sites TechnoS-SourceS / CodeS-SourceS cliquez ici pour créer votre compte.

Login et mot de passe que vous avez sur
CodeS-SourceS/TechnoS-SourceS




Mot de passe oublié ? / Activation de compte
Créer un compte