Вопросы по реорганизации проектов Visual SourceSafe - PullRequest
0 голосов
/ 05 октября 2011

Я унаследовал очень дезорганизованную базу данных 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  

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

C:\Source\Products\Product1  
C:\Source\Products\Product2  
C:\Source\Products\Product3  
C:\Source\Libraries\Library1  
C:\Source\Libraries\Library2  
...  
C:\Source\Libraries\Library5  

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

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

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

$\Prodcuts\Product1  
...  
$\Libraries\Library5  

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

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

Darvis

1 Ответ

1 голос
/ 05 октября 2011

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

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

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

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

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

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

...