Combinez DVCS avec Visual Source Safe
-
03-07-2019 - |
Question
Je suis obligé d'utiliser Visual Source Safe 2005 au travail. J'aimerais combiner cela avec un DVCS afin de pouvoir archiver les fichiers localement sans perturber les collègues s'il y a un bogue ou s'il ne se compile pas.
Dans mes tentatives avec Mercurial, cela fonctionne, mais provoque quelques problèmes étranges. À savoir, il pense que quelqu'un d'autre a extrait les fichiers que j'ai extraits.
Voici mes réflexions sur la façon dont je devrais gérer cela:
- Désactivez la validation automatique.
- Travailler localement dans Mercurial
- Quand je serai prêt à appliquer mes modifications ...
- Cloner mon référentiel Mercurial.
- Mettre à jour mon référentiel Visual Source Safe
- Extraction et fusion des deux référentiels à l'aide de Mercurial.
- Tout vérifier dans Visual Source Safe.
Cela vous semble-t-il raisonnable? J'entends toujours de mauvaises choses à propos de VSS, est-ce simplement me demander de voir ces problèmes de visu?
La solution
WBlasko
J'ai trouvé le même problème. Je souhaitais modifier les fichiers et les fusionner à tout moment, au lieu d'attendre qu'un autre développeur les déverrouille. La solution qui a fonctionné pour moi était la suivante:
1) Obtenez la dernière version d'un projet VSS (j'ai placé tous les projets VSS sous vss):
c:\vss\projectA
2A) Initialiser avec Mercurial
cd vss\projectA
C:\vss\projectA>hg init
2B) Cloner le projet à l’endroit où il pourrait être modifié à volonté
hg clone vss\projectA myProjects\projectA
3) Récupérez les dernières modifications de la copie VSS (ignorez si vous venez de 1 et 2)
C:\myProjects\projectA>hg pull
C:\myProjects\projectA>hg update
(solve conflicts if any)
4) Travaillez à votre guise avec la version clonée. Plus tard, poussez votre travail sur la copie vss:
C:\myProjects\projectA>hg push
(don't run hg update yet, wait for VSS latestes version)
5) Maintenant, effectuez une extraction de tous les fichiers du projet VSS
6) Exécutez " hg update " sur le projet VSS pour fusionner vos modifications aux dernières modifications de VSS.
C:\vss\projectA>hg update
(if there are conflicts, resolve them)
7) Validez les modifications
C:\vss\projectA>hg commit
8) Effectuez une vérification VSS (en libérant les verrous des autres personnes). Revenez à l'étape 3. répétez les étapes 3 à 8 pour toujours puis ...; -)
Ainsi, vous pouvez travailler avec un bon système de contrôle de version tout en pouvant "parler". aux projets hérités. Vous pourrez également profiter de: a) Pas de problème avec les fichiers verrouillés b) vous pouvez partager votre référentiel avec d'autres personnes sachant utiliser Hg c) faire des branches, etc.
Veillez à mettre d'abord à jour / résoudre les conflits, à tester et ensuite à effectuer un enregistrement VSS
Salut, Luis