2010-10-26 23 views
0

(je suis nouveau Perforce et essaie d'éviter de me faire des problèmes, j'ai des problèmes frapper le faire avec d'autres systèmes de contrôle de code source)Workflow pour renommer une classe lors de l'utilisation de Visual Studio avec Perforce

Lorsque je renomme Je classe je dois

  • Changer le nom de la classe, il est auto
  • Get Visual studio Refactor tout le code qui utilise la classe
  • Renommez le fichier dans le projet Visual studio
  • Renommer le fichier dans Perforce
  • Vérifiez les changements dans Perforce
  • ensuite fusionner peut-être le changement de ma branche de travail dans la branche principale

Quelle est la meilleure façon de faire ci-dessus avec Perforce? Quelles sont les questions dont je dois être conscient?

Répondre

2

Il s'agit malheureusement d'un processus en plusieurs étapes. Ce que vous devez faire, déplacez-le d'abord en utilisant resharper, puis déplacez-le à nouveau en utilisant perforce.

Voilà comment je le fais (en Perforce 9.2 et ci-dessus):

  1. Tout d'abord, checkout les fichiers Perforce. Cela effacera les indicateurs readonly pour ces fichiers et laissera Resharper modifier les fichiers dans le cadre du déménagement.
  2. Utilisez Refactoring Déplacer de Resharper et déplacez les classes dans le nouveau répertoire.
  3. L'étape précédente a également déplacé les fichiers de l'ancien dossier vers le nouveau dossier. Alors maintenant, nous devons résoudre ce problème afin que nous puissions également faire l'opération de déplacement dans Perforce. Utilisez l'Explorateur Windows (ou quel que soit votre outil favori) pour déplacer les fichiers de l'emplacement nouveau vers l'emplacement ancien.
  4. Accédez à Perforce et utilisez le menu contextuel Rename/Move pour déplacer les fichiers. Cela va créer une paire d'entrées dans la liste des modifications pour chaque fichier; la première entrée est pour supprimer le fichier du dossier d'origine et la deuxième entrée pour l'ajouter à la nouvelle.
2

Si vous avez une nouvelle version de Perforce, elle prend désormais en charge la commande move, qui conservera l'historique des fichiers sous différents noms. Si cela est disponible, vos étapes sont simples et devraient fonctionner correctement (du côté de Perforce, j'ai moins d'expérience avec VS).

Si la commande de déplacement n'est pas disponible, vous pouvez consulter this question pour une discussion plus détaillée sur le changement de nom/l'édition de fichiers dans Perforce.

+0

Merci, le problème possible est que l'étape «Renommer le fichier dans le projet Visual Studio» renomme également le fichier sur le disque. –

+0

@Ian Ringrose: Cela pourrait encore fonctionner. Tout d'abord, vérifiez le fichier à modifier dans Perforce, puis faites le déplacement VS, puis le déplacement p4. P4 pourrait cependant s'opposer à l'existence du fichier à l'endroit où il se déplace; Je ne sais pas sur celui-là. –

0

Avez-vous jeté un oeil à l'intégration de Visual Studio (P4SCC) disponible sur Perforce products page? Je suppose qu'il prend en charge un renommage plutôt bien (avertissement: je n'utilise pas Visual Studio avec Perforce moi-même, donc je peux me tromper).