J'ai une solution Visual Studio. Actuellement, c'est une solution vide (= pas de projets) et j'ai ajouté quelques dossiers de solutions.
Les dossiers de solution ne semblent être que des «dossiers virtuels», car ils ne sont pas vraiment créés dans le système de fichiers et les fichiers à l'intérieur des dossiers de solution se trouvent simplement dans le même dossier que le fichier .sln.
Y a-t-il un paramètre que j'ai négligé qui indique à Visual Studio de traiter les dossiers de solution comme de «vrais» dossiers, c'est-à-dire de les créer dans le système de fichiers et d'y déplacer des fichiers lorsque je les déplace à l'intérieur de la solution dans l'un de ces dossiers?
Edit: Merci. Je vais faire une suggestion pour VS2010 alors :)
visual-studio
Michael Stum
la source
la source
Réponses:
Aucun réglage spécial. Je ne pense pas que ce soit pris en charge.
Vous pouvez créer de vrais dossiers dans un "projet" au sein de la solution, mais pas dans la solution elle-même.
la source
Il existe une solution de contournement, qui se comporte réellement comme prévu .
Terminé. Désormais, l'Explorateur de solutions reflètera tout changement dans le système de fichiers et vice versa (y compris les sous-dossiers).
Je (manque) l'utilise pour les spécifications, les documents, le PM et certains scripts DevOps qui sont partagés au sein de l'équipe. Il est facile de choisir ce qu'il faut inclure dans le contrôle de code source ou non, et (s'il est configuré correctement) cela n'entre pas en conflit avec build.
Je sais que la fonctionnalité n'est pas destinée à ce cas d'utilisation, mais à part l'icône peut-être trompeuse «Projet», je n'ai pas encore trouvé de pénurie à ce hack. Et il existe encore des cas d'utilisation où les dossiers de solutions classiques (virtuels) fournis par VS s'intègrent dans l'image. Qu'est-ce que tu penses?
la source
.*proj
format basé sur le système de fichiers, plus propre et plus clair .Dans Visual Studio 2017, cliquez sur l'icône «Solutions et dossiers» dans la fenêtre Explorateur de solutions. Ce bouton bascule de la vue virtuelle «solution» à une «vue source» qui correspond à la disposition des dossiers et des fichiers sur le système de fichiers. Lorsque vous ajoutez un nouveau dossier, le dossier est créé physiquement à l'emplacement prévu. .
la source
La réponse choisie suggère qu'il serait possible d'utiliser des projets réels au lieu de dossiers de solutions, mais n'explique pas vraiment comment. Je suppose que ce que je décris ici est peut-être le moyen le moins gênant d'y parvenir ... :-P
Le problème avec les fichiers de projet standard est qu'ils seront éventuellement compilés par
MSBUILD
. Et si vous voulez avoir un projet qui ne contient que des fichiers non compilables, ce sera un problème.Mais il y a quelque temps, Visual Studio a introduit un nouveau type de projet: Projet partagé (extension .shproj). Ce type de projet n'est pas compilé par défaut, mais uniquement quand (et seulement si) il est référencé par un autre projet.
Une partie de l'astuce consiste donc à utiliser des projets partagés au lieu de dossiers de solutions . Il est évidemment possible d'ajouter un projet partagé qui n'est jamais référencé par aucun autre projet, ce qui signifie que nous pouvons éviter le problème présenté ci-dessus.
Ensuite, en utilisant la
<None Include="**/*" />
clause dans le fichier .shproj, nous pouvons le faire refléter automatiquement tous les nouveaux fichiers et / ou sous-dossiers.Donc, en gros, faites ceci:
Par exemple, dans mon cas, j'ai créé un DockerDev.shproj, donc je peux regrouper certains scripts liés à docker que nous exécutons uniquement sur nos machines de développement:
Ce fichier .shproj gardera une trace de n'importe quel fichier, dans n'importe quel sous-dossier de ce nouveau
DockerDev
dossier dans ma solution.Pour autant que je puisse voir, cette solution fonctionne à peu près comme ce que l'OP a demandé: elle fonctionnera comme une référence non compilable à un dossier, et elle reflétera automatiquement toutes les modifications qui y sont apportées.
la source
Sara Ford a contribué à une macro pour faire cela. Dans Visual Studio 2010, si vous ouvrez votre explorateur de macros, vous verrez une macro appelée «GenerateSlnFolderOnDirStructure». Cela automatisera la création des dossiers de solution et ajoutera les fichiers.
la source
Dossier vers dossier de solution par Cecilia Wirén - CeciliaSHARP
Supprimez les tracas liés à l'ajout de plusieurs fichiers dans le dossier de la solution. Utilisez simplement le menu contextuel de la solution et juste en dessous de l'option de création d'un nouveau dossier de solution, vous trouvez maintenant `` Ajouter un dossier en tant que dossier de solution ''. Cela créera un dossier de solution avec le même nom que celui que vous avez sélectionné et ajoutera les éléments à l'intérieur de ce dossier au dossier de solution. Cela ne déplacera pas les fichiers sur le disque.
la source
Non, ce n'est pas pris en charge. Comme vous vous en doutez, les dossiers de solution sont simplement des sous-entrées virtuelles dans le fichier .sln, rien à voir avec le système de fichiers.
la source
Visual studio n'a aucun support pour cela. J'ai cependant fait une extension qui fait quelque chose de similaire pour VS2013. Il mappe les dossiers de solution aux dossiers physiques de votre disque dur, bien que le mappage soit à sens unique (du disque dur à la solution). Cela signifie que le contenu d'un dossier de solution reflétera le contenu du dossier du disque dur, et non l'inverse.
Avec cela à l'écart, l'extension peut encore être utile. Il prend en charge le mappage des dossiers de solution sur des dossiers physiques, le filtrage des fichiers et des répertoires basés sur l'expression régulière et la mémorisation des mappages dans votre fichier .sln. Les propriétés ne sont pas intrusives, donc les développeurs sans l'extension peuvent toujours ouvrir le sln et ne pas être affectés.
Hébergé sur la galerie Visual Studio: https://visualstudiogallery.msdn.microsoft.com/69e19ea6-4442-4cb6-b300-044dd21f02bd
Edit: téléchargé sur bitbucket. Maintenant open source. Licence MIT. https://bitbucket.org/LSS_NorthWind/physical-solution-folders
la source
Remarque: Oui, c'est possible, vous pouvez créer un dossier à la racine mais c'est un peu compliqué ....
En donnant quelques efforts supplémentaires, vous pouvez le faire. Comment? Permet de suivre l'étape -
6.Prenez le référentiel sur un nouvel emplacement.
Vous avez terminé...
si vous ne parvenez toujours pas à voir votre dossier -----
Félicitations, vous avez terminé.
Si vous rencontrez un problème, écrivez-moi pour obtenir de l'aide.
la source
Créez un "dossier Solution". Cela créera un dossier logique, mais pas physique. Cliquez avec le bouton droit sur le dossier de la solution et ouvrez une nouvelle boîte de dialogue de projet. Mais avant de cliquer sur OK, vous devez changer l'emplacement du projet dans le dossier physique souhaité et VS le créera et y placera le projet.
la source
Vous pouvez ajouter de vrais dossiers en choisissant «Ajouter un nouveau filtre» pour un fichier de projet Visual Studio. Vous pouvez également faire "Ajouter un nouveau filtre" sous un dossier existant. Une fois le dossier créé, renommez-le et ajoutez le fichier source ou d'en-tête ou selon ce qui convient à votre projet. C'est une façon que je connais qui nous permet de créer de vrais dossiers via l'IDE de Visual Studio.
la source
Le dossier créé sous la solution sera virtuel comme indiqué. Peut-être que cela pourrait être appelé une solution de contournement, mais vous pouvez créer physiquement le dossier sur le disque avant ou lorsque vous ajoutez un nouvel élément / projet et Robert devrait être un frère ou une sœur de votre père.
ps- en regardant de plus près peut-être que je devrais expliquer "Bob est ton oncle" signifie votre amende / triée.
la source
J'ai voulu cette fonctionnalité plusieurs fois moi-même, mais en fin de compte, vous ne voulez vraiment PAS pouvoir le faire. Considérez votre Solution (fichier) comme la racine d'une application Web et considérez les dossiers Solution comme des répertoires virtuels (littéralement et fonctionnellement). Le contenu d'un répertoire virtuel Web peut être physiquement sur un serveur complètement différent. Là où Visual Studio a brouillé le concept des dossiers de solution, c'est en vous permettant de créer de nouveaux fichiers dans le dossier. Vous devez toujours "Ajouter existant" lors de l'ajout de contenu. Lorsque vous ajoutez un fichier existant, il crée un lien vers l'emplacement source du fichier.
Mais la raison pour laquelle vous ne voulez pas que les dossiers de solution se comportent comme des dossiers «physiques» est que votre disposition de solution n'utilise pas nécessairement la même convention que votre disposition de contrôle de source. Les dossiers de solutions vous permettent de personnaliser la hiérarchie de vos projets afin de pouvoir regrouper les projets et les éléments comme vous le souhaitez, puis de décider que vous ne l'aimez pas et de le modifier à nouveau sans avoir à passer par le cauchemar du déplacement des éléments de contrôle de source. et irritant le reste de votre équipe.
la source
src
,test
,tools
, etc. Vous voulez certainement voulez prendre cette décision au début du projet à votre point au sujet irritant l'équipe, mais c'est vrai pour la plupart des décisions architecturales.J'ai un peu une solution de contournement pour cela (ce n'est pas génial, mais cela fonctionne).
Ce n'est pas génial car vous devrez gérer manuellement les références de fichiers, mais cela fonctionne pour moi.
la source