Вопросы о реорганизации проектов Visual SourceSafe

#visual-sourcesafe

#visual-sourcesafe

Вопрос:

Я унаследовал очень неорганизованную базу данных VSS, и мне нужно ее очистить. Прежде чем я завершу свою реорганизацию, я хотел бы получить некоторые рекомендации, чтобы я не совершал подобных ошибок, как предыдущий человек. Я собираюсь перенести все в новый экземпляр VSS и начать все заново. Историческая информация не вызывает беспокойства, поэтому понятно, что новая установка не будет включать историю предыдущих версий. (При необходимости будет доступна текущая база данных VSS.)

В настоящее время мы используем Visual Studio 2005 и Visual Source Safe 2005. Мы перейдем на VS2010 и, возможно, TFS, но сначала первые шаги.

У нас есть три ASP.NET продукты, каждый из которых совместно использует несколько библиотек. Вот базовая структура проектов:

 PRODUCT 1  
    References:  
        Library 1  
          References:  
            Library 4  
            Library 5  
        Library 2  
        Library 3  

PRODUCT 2  
    References  
        Library 1  
            References:  
                Library 4  
                Library 5  
        Library 3  
        Library 6  

PRODUCT 3  
    References  
        Library 5  
        Library 3  
  

В качестве первого шага у меня есть все продукты и библиотеки, «не связанные» с VSS, и я структурировал их по папкам следующим образом. (Есть 3 разработчика, и мы все настроим одинаковую структуру папок на наших компьютерах.)

 C:SourceProductsProduct1  
C:SourceProductsProduct2  
C:SourceProductsProduct3  
C:SourceLibrariesLibrary1  
C:SourceLibrariesLibrary2  
...  
C:SourceLibrariesLibrary5  
  

Каждый продукт и каждая библиотека имеют свое собственное решение; ссылки на проекты используются для всех библиотек, на которые даны ссылки. Например, решение для ПРОДУКТА 1 включает ссылки на проекты для библиотек 1, 2, 3, 4 и 5. Решение для библиотеки 1 содержит ссылки на проекты для библиотек 4 и 5 и так далее. На этом этапе все строится.

Вопрос: Является ли обычной практикой для ПРОДУКТА 1 включать ссылки на проекты для библиотек 4 и 5, даже если он не ссылается на них напрямую (хотя один из его ссылочных проектов делает это)?

Я планирую настроить параллельную структуру в VSS:

 $ProdcutsProduct1  
...  
$LibrariesLibrary5  
  

Вопрос: является ли это логической структурой для использования? Если нет, что мне следует сделать по-другому.

Заранее спасибо за ваш вклад.

Darvis

Ответ №1:

Вопрос: Является ли обычной практикой для ПРОДУКТА 1 включать ссылки на проекты для библиотек 4 и 5, даже если он не ссылается на них напрямую (хотя один из его ссылочных проектов делает это)?

Да, это так, это даже требуется для определенных задач, таких как анализ кода в VS2010. Процесс сборки в любом случае исключит любую непосредственно неиспользуемую ссылку (это не причина не очищать ее, но поддерживается, что не все перечисленные ссылки на проекты используются непосредственно при сборке проекта).

Если вы работаете в VB.NET , вы можете автоматически очищать ссылки (но вы можете легко нарушить возможности анализа кода, и я сталкивался со случаями, когда это просто плохо работало), в C # возможность очистки ссылок на проекты не встроена (некоторые (несвободные) плагины делаютэто похоже на Resharper)

Вопрос: является ли это логической структурой для использования? Если нет, что мне следует сделать по-другому.

(Возможно, это должен быть отдельный вопрос о программистах, поскольку он довольно субъективен, но я все равно отвечу :))

Я не вижу никаких проблем в вашей логике. Лично я не разделяю библиотечные проекты и исполняемые проекты. Это просто проекты. Это действительно вопрос личных предпочтений, другие разделили бы его по клиентам, платформам и т. Д. Но пока люди могут видеть логику того, что вы делаете, и я не думаю, что вы столкнетесь с какими-либо проблемами при использовании VSS.