Звучит так, будто вы идеальный кандидат на "стандартную" стратегию из руководства по слиянию и слиянию TFS: http://tfsbranchingguideii.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=20785
По сути, это берет вашу базовую модель Dev <-> Main <-> Release, а затем добавляет еще один слой косвенности. Оперативные исправления получают свою собственную ветвь на стороне релиза иерархии, так что их разработка + тестирование не нарушает обычный цикл QA, происходящий в Main, и не загрязняет святость Release. Вы можете увидеть наглядную иллюстрацию на странице 7 в PDF.
Есть ли у вас железное требование, чтобы ветви (ии) Release представляли точный моментальный снимок производства (т. Е. Существует связь 1: 1 между проверками для Release и развертываний и / или отдельной веткой Release, созданной для развертывания)? Если нет, то вам может даже не понадобиться ветка исправлений - делайте исправления непосредственно в Release. Это описано в «Основной» стратегии ранее в документе.
В любом случае, обязательно прочитайте весь комплект документов. Это не долго, но извлекает много результатов из реальных реализаций. («Рейнджеры VSTS» в основном состоят из MVP и других местных консультантов)
Чтобы получить более теоретический взгляд на стратегии развития команды и их реализацию в TFS, ознакомьтесь с документами из группы «Шаблоны и практики»:
http://msdn.microsoft.com/en-us/library/bb668991.aspx
http://branchingguidance.codeplex.com/Wiki/View.aspx?title=html