Итак, у вас есть решение, которое импортирует код из разных TeamProjects.
Это не совсем оптимальная настройка, еще одна гибкая альтернатива может быть следующей:
$/Program1
/SharedSources
/Core_branch
Core.csproj
/Sources
/Program1
Program1.csproj
/Program2
Program2.csproj
Sources.sln
Если бы вы настроили свою SCM-структуру подобным образом, вам просто нужно определить следующее в определении вашей сборки:
$/Program1 $(SourceDir)
Итак, если у вас возникла проблема с предыдущей версией Program1
, вы могли бы продолжить работу с веткой исправлений и не столкнуться с вашей текущей проблемой. Отличный ресурс по общему ветвлению TFS и формированию решения в управлении исходным кодом можно найти здесь .
На ваш конкретный вопрос «Как я могу изменить рабочую область только для каталога Core, чтобы получить метку вместо получения самой последней.»:
В вашей собственной рабочей станции / рабочей области вы можете получить предыдущую версию, а затем используйте Cloak , чтобы исключить Core
из следующего GetLatest. Это может позволить вам проводить анализ, даже создавать наборы полок, содержащие изменения в Program1
, которые исправляют любые ошибки.
Но, поскольку маскирование не используется во время сборки (см. здесь для интересного сообщения), Я полагаю, что в конечном итоге вы вынуждены продолжить работу с веткой, чтобы собрать исправления.