Фильтровать проекты, которые запускают сборку в tfs - PullRequest
0 голосов
/ 02 ноября 2011

Есть ли в Team build 2010 (tfs) какие-либо средства для отделения проектов, найденных в рабочей области сборки, от проектов, которые будут запускать сборку?

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

Ответы [ 3 ]

1 голос
/ 02 ноября 2011

Вы можете создать больше определений сборки, чтобы строить только определенные проекты.У меня было два набора проектов, фреймворк и модули проектов.У меня было два определения сборки CI, одно для набора фреймворков и одно для модулей.Если я изменил каркасный проект, сборка каркаса была запущена, и все выходные сборки были зарегистрированы в TFS в папке BuildAssemblies.Эта папка включена в рабочую область определения сборки модулей, поскольку ссылки на BuildAssemblies используются в проектах модулей.Обычно, если я изменяю BuildAssemblies, сборка модулей содержимого должна запускаться, но я проверил свои изменения с префиксом *** NO_CI ***, чтобы не запускать сборку модулей.

Но это не очень хороший дизайн,Если вы измените сборку фреймворка и нарушите сборку модулей этим изменением, вы не узнаете об этом, пока не запустите сборку модулей вручную.Нет смысла использовать gated check-in для сборки модулей.

1 голос
/ 02 ноября 2011

В целом, я склонен согласиться с Джоном Сондерсом, но все же:
Вы можете иметь проекты, которые не хотите запускать сборку, в отдельном месте в вашем контроле исходного кода.Удалите их из основного решения как проекты и добавьте их как сборки.

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

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

0 голосов
/ 02 ноября 2011

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

...