Я нахожусь в процессе обновления с VS2008 до VS2010 и хочу провести некоторую очистку.Мое основное решение состоит из 20 или около того проектов в плоском файловом пространстве.Однако существует группировка по проектам (некоторые библиотеки, некоторые клиентские программы, некоторые тестовые программы и т. Д.), И я хотел реорганизовать структуру физического диска проектов соответствующим образом.Кроме того, моим источником управления является VSS (1), поэтому я хочу, чтобы его файловая структура была выровнена со структурой физического диска и поддерживала общую историю файлов.
Итак, какие инструменты доступны для этого?Или мне лучше разрезать решение на куски и собрать его в нужных местах?
Есть несколько SO вопросов, которые говорят о наилучшем макете для решения, но ни один из тех, что я видел, не говорит вам, какполучить от A до B
Как провести рефакторинг больших проектов в visual studio
Макет проекта на диске в visual studio
Например, я хочу перейти от "A"
Solution
|
|-Project1
|-Project2
|-Project3
|-Project4
к "B"
Solution
|
|-Group1
| |
| |-Project1
| |-Project2
|
|-Group2
|
|-Project3
|-Project4
обновление 1
Я должен иметьупомянул, что я попробовал очевидный метод создания папок решений для «Group1» и «Group2» и затем перетаскивал проекты в их новые местоположения под каждой папкой.Это хорошо работает для создания логической организации проектов в VS2010, но не меняет физическое расположение проектов на диске.
Обновление 2
Я попытался удалитьпроект из решения, физически перемещая его на диск и затем добавляя его в папку решения.Это позволяет переместить на диск, но проект запомнил, где он был изначально в VSS и связан с этими файлами, а не VS2010, создав новую структуру проекта в VSS
Обновление 3
Подумав немного, я понял, что я прошу больше о том, как перенастроить проекты VSS с разметкой физического диска после перемещения проектов в VS2010.Исправление этого повлечет за собой модификации как макета проекта VSS, так и внутренних компонентов проекта VS2010.Поэтому я обновил теги и заголовок вопроса.
Обновление 4 - Мое ручное решение
ОК, поэтому я разработал очень интенсивный метод для перемещения объектов:
Удалить проект из решения VS2010
Переместить его в новое место на диске
Удалите все связанные с VSS файлы из проекта
Откройте файл проекта в текстовом редакторе и удалите все связанные с VSS записи (все они начинаются с "Scc")
Добавьте проект обратно в решение и заново создайте любой проект для ссылок на проекты
Проверьте решение и проект обратно в VSS и закройте VS2010
Откройте VSS и удалите файлы только с кодом из нового местоположения проекта в VSS
Совместно используйте файлы из старого местоположения в VSS
Удалить файлы из старого расположения в VSS
Удалить старое местоположение проекта в VSS
Это лучший / единственный способ сделать это?
(1) Да, я знаю - VSS.Тем не менее, в контексте того, что я использую его, он прекрасно работает, и я не ошибся, и хотя я изучил другие варианты, я не собираюсь менять сейчас.Поэтому, пожалуйста, никаких комментариев о том, как мне перейти к следующему лучшему в контроле исходного кода.И если это не поможет вам, как на счет этого: я на самом деле использую доступный и активно поддерживаемый коммерческий продукт, который использует VSS в качестве внутреннего хранилища данных управления версиями!