Comment déplacer un projet vers un autre dossier dans Visual Studio? Je suis habitué à cette structure dans mes projets.
-- app
---- Project.Something
---- Project.SomethingElse
Je veux renommer tout l'espace de noms SomethingElse en SomethingNew, quelle est la meilleure façon de le faire (sans entrer manuellement dans le fichier .sln)?
visual-studio
visual-studio-2008
Egor Pavlikhin
la source
la source
Réponses:
Supprimez le projet de votre solution en cliquant dessus avec le bouton droit de la souris dans la fenêtre Explorateur de solutions et en choisissant Supprimer. Déplacez tout le dossier du projet, y compris les sous-répertoires, là où vous le souhaitez. Ajoutez le projet à votre solution.
Les noms d'espaces de noms sont quelque chose de complètement différent, il suffit de modifier le code source.
la source
J'ai essayé la suggestion de supprimer et de rajouter le projet, mais réparer les dépendances peut être pénible.
J'utilise cette approche:
la source
git mv ...
au lieu demv ...
. Consultez lagit-mv
documentation pour plus d'informations.la source
Ce qui a fonctionné pour moi était de:
..\packages
pour..\..\..\packages
depuis que j'ai déplacé le projet dans un dossier plus profond.la source
J'ai eu le même problème. J'ai résolu en bougeant les références et en moins de 15 minutes, sans changer les références.
Pour moi, la solution était simple:
Exemples:
Dans le fichier de solution (.sln)
Original: Project ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PATH1.UI", " ScannerPDF \ PATH1.UI \ PATH1.UI.csproj", "{A26438AD-E428-4AE4-8AB8-A5D6933E2D7B } "Project (" {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} ") =" PATH1.DataService "," ScannerPDF \ PATH1.DataService \ PATH1.DataService.csproj "," {ED5A561B-3674-4613-ADE5-B-3674-4613-ADE5-B-3674-4613-ADE5 } "
Nouveau: Project ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PATH1.MX.UI", "PATH1.MX.UI \ PATH1.UI.csproj", "{A26438AD-E428-4AE4-8AB8 -A5D6933E2D7B} "Projet (" {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} ") =" PATH1.DataService "," PATH1.DataService \ PATH1.DataService.csproj "," {ED5A5461366-AD1146E-3674-E } "
Dans le fichier de projet:
Original:
Nouveau:
Référence d'origine: .... \ lib \ RCWF \ 2018.1.220.40 \ TelerikCommon.dll
Nouvelle référence: .. \ lib \ RCWF \ 2018.1.220.40 \ TelerikCommon.dll
la source
Résumé: renommer et déplacer dans VS2019 avec git, conserver l'historique de git, tirer un peu parti de R #, mise à jour automatique des références de projet dépendant (important pour les sln avec de nombreux projets, nous en avons> 200)
J'ai utilisé les étapes suivantes pour renommer et déplacer des projets C # dans Visual Studio 2019. Ce processus utilise R # pour ajuster les espaces de noms. L'historique git est conservé en effectuant un "git mv" (évitant la suppression de l'historique d'ajout / suppression).
Deux phases: 1) renommer le projet en place et 2) déplacer le projet.
(Utilise le conseil de base2 concernant les projets de déchargement.)
Renommer
Remarque: le dossier dans l'Explorateur Windows reste à ce stade l'ancien nom (par exemple, Utils.Foo). Ceci est corrigé dans les étapes de déplacement.
Bouge toi
Cette méthode: 1) conserve l'historique de git, 2) exploite R # pour ajuster les espaces de noms de manière atomique et 3) met à jour les projets dépendants en masse (évite l'édition manuelle fastidieuse des fichiers sln et csproj dépendants).
déchargez tous les projets de la solution (afin que la suppression du projet cible ne déclenche pas de modifications dans les projets dépendants)
VS | sélectionnez tous les dossiers de solution sous Solution | cliquez avec le bouton droit sur Décharger les projets
déplacer des dossiers en utilisant git (donc l'historique est conservé)
a) Ouvrez l'invite de commande du développeur pour 2019
b) git status (pour illustrer «rien à valider, nettoyer l'arbre de travail»)
c) git mv le projet par exemple, git mv "C: \ Code \ foo \ foo \ Utils.Foo" "C: \ Code \ Foo"
d) état git pour afficher / vérifier le changement
VS | Explorateur de solutions | sélectionner un projet | clic droit | Supprimer (puisque tous les projets sont déchargés, cela ne supprimera PAS correctement les références à celui-ci dans les projets dépendants)
a) VS | Explorateur de solutions | sélectionner le dossier parent cible | clic droit | Ajouter | Projet existant
IMPORTANT: confirmez que les fichiers * .csproj des projets dépendants ont été mis à jour.
(VS | Team Explorer | Modifications | double-cliquez sur un csproj dépendant répertorié | inspectez-vérifiez le changement de chemin ProjectReference)
Utilisez Notepad ++ (ou un autre éditeur de texte) pour corriger les chemins. Cela peut souvent être fait avec une simple recherche et remplacement (par exemple, ../../../../ à ../../).
Cela mettra à jour ...
a) Références GlobalAssmeblyInfo.cs
b) chemins vers les packages
c) chemins vers les fichiers de diagramme de validation de dépendance
d) chemins vers les chemins de jeu de règles (par exemple
<CodeAnalysisRuleSet>..\..\..\..\SolutionDependencyValidation\IgnoreWarnings.ruleset</CodeAnalysisRuleSet>
)Enregistrer tout, fermer la solution, je préfère supprimer les dossiers bin et obj pour être débarrassés de l'historique, rouvrir la solution
a) VS | Explorateur d'équipe | Changements
i) devrait voir les changements par étapes qui révèlent les fichiers qui ont été déplacés ii) devrait voir les projets dépendants (* .csproj) qui ont été bien mis à jour, passez en revue les diffs csproj et notez que les chemins ont été magnifiquement mis à jour !! (c'est la magie qui évite de mettre à jour laborieusement manuellement les fichiers csproj à l'aide d'un éditeur de texte)
b) dans l'Explorateur Windows, vérifiez que l'ancien emplacement est vide
c) Nettoyer la solution, reconstruire la solution, exécuter des tests unitaires, lancer des applications dans sln.
la source
C'est facile dans VS2012; utilisez simplement la fonction de mappage des modifications:
la source
dans Visual Studio Comunity 2019, j'ai fait ce que dit Victor David Francisco Enrique, mais je n'avais besoin que de supprimer le dossier .vs invisbile
la source
Dans VS 2015
MVC
, vous devrez peut-être ajouter la référence dans le gestionnaire de références.la source
J'ai compris que cet essai a fonctionné pour moi.
Dans l'édition communautaire de Visual Studio 2017, il crée un projet à ce chemin "C: \ Users \ mark \ source \ repos \ mipmaps \ mipmaps" Cela créera un problème d'accès au fichier refusé
Maintenant, vous pouvez résoudre ce problème de cette façon.
fermez votre processus de studio visuel. Ensuite, recherchez votre projet et copiez le dossier du projet Mais, commencez par créer un sous-dossier Projets nommés à l'intérieur de votre dossier Visual Studio 2017 dans les documents. Ensuite, collez le dossier de projet dans votre dossier de projet Visual Studio 2017 et non dans le dossier principal de Visual Studio 2017, il doit aller dans le sous-dossier appelé Projets. Ensuite, redémarrez Visual studio 2017 Ensuite, choisissez Ouvrir la solution de projet Ensuite, recherchez votre projet que vous avez collé dans votre dossier Projets de Visual Studio 2017 Ensuite, nettoyez le projet et reconstruisez-le, il devrait être généré et compilé très bien. J'espère que cela a aidé quelqu'un d'autre. Je ne sais pas pourquoi Microsoft a pensé construire vos projets dans un chemin où il a besoin d'autorisations d'écriture me dépasse.
la source
Je voulais que les modifications dans Git soient affichées sous forme de mouvements / renommage au lieu de suppression et d'ajout. J'ai donc fait un combo de ce qui précède et de ce post .
Et ajustez les chemins des projets et des assemblys depuis les Pkg nuget dans le fichier sln via un éditeur de texte.
la source
la source
Cela a fonctionné pour moi vb2019. J'ai copié mon dossier de projet source. J'ai ensuite collé le projet et renommé le dossier en quelque chose. Afin de rompre les liens avec le dossier du projet source, j'ai temporairement renommé le dossier source. J'ai ouvert mon projet de destination. Les chemins d'accès aux formulaires et modules ont été redécouverts dans le dossier local. J'ai parcouru tous mes formulaires et modules pour m'assurer qu'ils fonctionnaient. J'ai dirigé le projet. J'ai fermé le projet. J'ai renommé le dossier du projet source en son nom d'origine. Je peux ouvrir les deux projets en même temps sans erreur.
la source
Regrouper les projets associés à l'aide de dossiers de solutions
Voir http://msdn.microsoft.com/en-us/library/vstudio/c6c756s6(v=vs.100).aspx
la source