Мое предложение состоит в том, чтобы определить, какие "проекты" выпускаются и версии независимо, и иметь отдельные структуры ветвления для каждого из них.
Вы не хотите иметь 2 независимых проекта (под независимыми, я имею в виду, что они выпускаются / версии отдельно) в одной и той же структуре ветвления.
Типичным способом управления зависимостями между этими проектами является регистрация двоичных файлов из Project 1 версии X в папку Project 2 «lib». Таким образом, вы можете выпускать новые версии Project 1 по своему желанию, но команда Project 2 может решить, когда и если взять зависимость от новой версии.
Если ваши различные "проекты" - это все части одной большой вещи, которая выпущена / версионирована вместе, то я бы порекомендовал просто убедиться, что они все живут в какой-то корневой папке (например, $ \ TFS \ Dev) и ветвятся из есть.