Я сделал большие слияния как в TFS, так и в Subversion. Кодовая база TFS была ветвью 1.5-> 2.0 приложения SharePoint с производственными изменениями, объединенными в кодовую базу 2.0. Слияние SVN было слиянием новых функций из форка в базовый источник.
Вы уже знакомы с TFS, поэтому я избавлю вас от подробностей, за исключением того, что инструменты changesets и TFS сделали этот процесс очень простым. Мы получили ошибку TF14087 из-за проблемы восстановления, но она была быстро устранена.
В SVN процесс был немного более ручным, потому что нам приходилось ориентироваться на конкретные версии файлов в SVN, а SVN проводил различие между файлами, что не давало нам гибкости, которую мы испытывали с наборами изменений в TFS (в таких случаях как «не все изменения в ChangesetA, но все изменения в ChangesetB»). В то время у нас не было отслеживания слияний, а дерево исходных текстов не было разработано для поддержки лучших практик отслеживания слияний в SVN.
Я думаю, что теперь, с отслеживанием слияний в SVN, этот процесс был бы немного проще, если бы вы следовали передовым методам, изложенным в CollabNet. Но имейте в виду, что TFS - это большой продукт с действительно хорошими инструментами графического интерфейса для управления вашим источником, в то время как SVN в большей степени зависит от командной строки, поэтому это усложняет ситуацию, если вы привыкли работать с графическим интерфейсом.