12
votes

Changer les noms de dossiers dans Visual Studio lors de l'utilisation de SVN

J'utilise VS2008 / VS2010 avec RESHARPER 5, Tortoisesvn 1.6.8.19260-X64 et ankhsvn 2.1.8420.8. La plupart des opérations que je fais dans Visual Studio se reflètent bien dans SVN, cependant, renommer des dossiers dans un projet peut causer des problèmes lorsque j'essaie de soumettre mes modifications. Aussi tous les espaces de noms dans les fichiers source C # dans le dossier renommé doivent être mis à jour pour refléter le changement de nom.

Quelle est la meilleure façon de renommer le dossier principal du projet ou des sous-dossiers de sous-dossiers et de vous assurer qu'il n'y a aucun problème avec SVN? Devrait-il être fait en dehors de Visual Studio?

Quel est le meilleur moyen de mettre à jour tous les changements d'espace de noms? Est la recherche / remplacer le seul moyen?

Y a-t-il des meilleures pratiques concernant les noms de dossiers et leur contenu?


0 commentaires

4 Réponses :


5
votes

Oui Faites votre renommée en dehors de Visual Studio.

Utilisation de Tortoisesvn dans Windows Explorer, faites votre renommée via le menu contextuel TortoiseSVN sur le dossier en question. Le projet de Visual Studio détectera les modifications du disque et vous demandera de recharger.

Vous pouvez également faire une exclusion du projet dans Visual Studio, puis renommez puis renommez le nouveau chemin.

EDIT: selon @sander Rijken ci-dessous, Ankhsvn suit le renommer et veille à ce que le renommé soit correctement enregistré dans la copie de travail SVN.
Si vous n'avez pas d'ankhsvn installé en plus de Tortoisisesvn, cependant, cela ne fonctionnera pas et vous devez faire comme je l'ai dit ci-dessus.


4 commentaires

Renommer en dehors de Visual Studio signifie que vous devez réparer le fichier de projet plus tard, en excluant et en apportant de nouveaux fichiers, ou en l'étant en la modifiant manuellement. Lorsque vous renommez dans Visual Studio, c'est un processus d'une étape


@Sander, mais le renommage dans Visual Studio ne dit pas à Tortoisevn sur le renommant, cela conduit à beaucoup de problèmes à Tortoisisesvn


Non, la question portait sur l'utilisation d'Ankhsvn. Ankhsvn suit le renommer et s'assure que le renommer est correctement enregistré dans la copie de travail SVN.


@Sander: J'ai ajouté cette information ci-dessus. J'aurais supprimé à la place, mais je ne peux pas puisqu'il s'agit de la réponse acceptée.



0
votes

Ce que je fais généralement lorsque vous devez effectuer un dossier Renommer est d'abord renommer le dossier à l'aide de TortoiseSVN, puis excluant / y compris le dossier dans VS et enfin de renommer tous les espaces de noms (avec Restomer, il s'agit simplement d'une question de fichier de fichiers et d'alt. + Entrée (ING) dans la directive sur l'espace de noms pour renommer le cas échéant.


0 commentaires

3
votes

Vous devriez pouvoir renommer des dossiers dans Visual Studio lors de l'exécution d'Ankhsvn. Aussi, lors de l'utilisation d'outils de refactoring tels que Restomer pour modifier l'espace de noms en fonction du nouveau nom de dossier, tout fonctionne comme prévu pour moi.


1 commentaires

Je me demande pourquoi cela a été évité. La question portait sur l'utilisation de la combinaison Resharper, Ankhsvn, TortoiseSVN. Avec cette combinaison Renommer avec ou sans RestoRper de Visual Studio est la meilleure façon de partir, car elle modifie à la fois le dossier réel, le fichier de projet et la copie de travail de subversion.



3
votes

Le agent svn Plug-in implémente l'interface ms-scci qui permet d'intégrer avec Visual Studio.

Depuis le MS-SCCI définit une opération de renommée de fichier, cela signifie que l'agent SVN peut effectuer des fichiers renommés de l'IDE, de sorte que tout plug-in qui implémente également le ms-scci .


0 commentaires