В точке, где создается новая ветвь, она становится равной той, которую вы выбрали для ветвления.
Хитрость слияния TFS (в отличие, например, от интеграции P4 или слияний ClearCase) заключается в том, что в любой данной точке слияние A -> B & B -> A не будет генерировать равное количествокандидатов на слияние.
Допустим, ветвь A создает ветвь B:
------->A
\
\
-----> B
Допустим, вы вносите изменения в A:
------->A-->A'
\
\
-----> B
Если вы пытаетесь объединить A '-> B вы получите в качестве кандидатов на слияние все ваши наборы изменений / исходные файлы, которые были изменены с A -> A '.
Но если вы попытаетесь слить B -> A', вы вообще не получите кандидатов на слияние.
Это поведение независимо от того, что A является «родителем».
Если ваш 'A' испорчен и не может быть исправлен с помощью регулярного слияния из B -> A, у вас естьследующие опции:
- Уничтожить A и сгенерировать новую копию B в новой ветви C
- Откат изменяется от A до тех пор, пока не достигнет «стабильного»
- Выполните безосновательное слияние с B -> A и форсируйте B-состояние на A
(возможно сслегка не по теме, но, тем не менее, отлично читается - и ценен для моего понимания TFS-пути: Эта статья Р.Бэнкса)