Спонсор: Microsoft
Опубликован: 25.03.2010 | Доступ: свободный | Студентов: 814 / 26 | Оценка: 4.43 / 3.71 | Длительность: 10:46:00
Лекция 6:

Управление зависимостями в системе управления исходным кодом Visual Studio Team System

< Лекция 5 || Лекция 6: 123 || Лекция 7 >

Ссылки на файлы сборки сторонних производителей

Если вам нужно создать ссылку на сборку за пределами текущего набора проектов, например, на библиотеку стороннего производителя, причем вы не можете или не хотите создавать ветвь из того проекта в ваш проект, и нет возможности использовать ссылку на проект, вы должны создать файловую ссылку.

Работа с общими двоичными файлами похожа на работу с общим исходным кодом. Решите, где вы будете хранить двоичные коды и как ваша группа должна осуществлять доступ к ним. Если у вас есть двоичные файлы, используемые в нескольких командных проектах, вы вольны управлять проектами как из командного проекта группы-владельца, так и из проекта, специально созданного для совместно используемых двоичных кодов.

Группам, пользующимся общими двоичными кодами, доступны те же два варианта, что и для ссылок на проект:

  • ветвление;
  • сопоставление рабочей области.

Ветвление

В этом сценарии вы выполняете ветвление двоичных кодов из общего расположения в ваш командный проект. Конфигурация, объединяющая двоичные коды из общего расположения и из проекта, создается на серверной стороне.

Отличие заключается в том, что все изменения двоичных кодов, например, новые версии, учитываются в процессе слияния между ветвями. Решение об учете измененных общих двоичных кодов принимается намного более явно.

Допустим, у вас есть два командных проекта $TeamProject1 и $Common, приме Common содержит общие двоичные файлы. Создайте ветвь из общего расположения в проект, ссылающийся на него. Структура папок TFS должна выглядеть примерно так, как показано на рис.6.5.

Ветвление из общего проекта Common

Рис. 6.5. Ветвление из общего проекта Common

Сопоставление рабочей области должно выглядеть примерно так:

Папка системы управления исходным кодом Локальная папка
$/MyTeamProject1/Main C:\MyTeamProject1\Main

Структура папок рабочей области на стороне клиента должна выглядеть примерно так, как показано на рис.6.6.

Структура папок рабочей области на стороне клиента

Рис. 6.6. Структура папок рабочей области на стороне клиента

Сопоставление рабочей области

В этом случае в командном проекте, пользующемся общими двоичными кодами, вы создаете ссылки на двоичные коды в общем расположении рабочей области на компьютере разработчика. Конфигурация, объединяющая двоичные коды из общего расположения и из проекта, создается на стороне клиента.

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

Например, если у вас есть проекты $TeamProject1 и $Common, причем $TeamProject1 ссылается на двоичные коды из $Common, структура папок рабочей области на стороне клиента должна напоминать структуру, представленную на рис.6.7.

Хранение общих библиотек

Рис. 6.7. Хранение общих библиотек

Сопоставление рабочей области должно выглядеть примерно так:

Папка системы управления исходным кодом Локальная папка
$/MyTeamProject2/Main/ C:\DevProjects\ MyTeamProject2\Main\
$/Common/Main/Bin C:\DevProjects\ MyTeamProject2\Main\ Source\CommonBin

Дополнительную информацию вы найдете в статье "Working with multiple team projects in Team Build" по адресу http://blogs.msdn.com/manishagarwal/ archive/2005/12/22/506635.aspx.

Руководство по ссылкам на проекты и файлы сборок

Создать ссылку на файл можно одним из двух способов:

  • Чтобы создать ссылку на сборку .NET Framework, выберите сборку в списке, отображенном на вкладке .NET диалогового окна Add Referen-ces.
  • Используйте кнопку Browse в диалоговом окне Add References. Такие сборки, как System.XML.dll, расположены в глобальном кеше сборок ( Global Assembly Cache, GAC ). Непосредственно сослаться на сборку внутри GAC вы не можете. Когда вы выбираете сборку на вкладке .NET диалогового окна Add References, на самом деле вы ссылаетесь на копию сборки в папке %windir%\Microsoft.NET\Framework\<версия>\.

Ссылки на проекты предпочтительнее ссылок на файлы. При управлении ссылками сборок, имейте в виду следующие соображения:

  • Везде, где только возможно, используйте ссылки на проект.
  • Используйте ссылки на файлы только при необходимости.
  • Для ссылок на проект и на файл используйте Copy Local = True.

Автоматическое отслеживание зависимостей

Каждый раз, когда вы выполняете сборку локального проекта, система сравнивает дату файла сборки, на который имеется ссылка, с датой рабочей копии на компьютере разработчика. Если сборка, на которую имеется ссылка, оказалась новее, "свежая" версия копируется в локальную папку. Одно из преимуществ данного способа состоит в том, что ссылка на проект, установленная разработчиком, не блокирует DLL-библиотеку на сервере и никак не мешает процессу сборки.

< Лекция 5 || Лекция 6: 123 || Лекция 7 >
Александр Будник
Александр Будник
Израиль, Иерусалим
Pavel Pelevin
Pavel Pelevin
Украина, Одесса