2010-03-15 3 views
0

Мы недавно предприняли попытку слияния большого «вишневого». Сначала мы выполнили полное слияние из одной дочерней ветви развития в родительскую главную ветвь, затем выполнили полное слияние главного ветви в другую дочернюю ветвь развития, затем мы попытались выполнить слияние вишневого слияния со второй ветви развития обратно в слияние. Было много проверок, включая переименования и удаления; и когда он не работал, мы сделали кучу отклонений TFPT.Как восстановить после сбоя слияния в TFS 2008?

Какие варианты мы должны восстановить здесь? Вещи вроде беспочвенного, силы и т. Д. Сливаются? Вернитесь назад к моменту времени и как-нибудь попробуйте еще раз?

ответ

1

Я предполагаю, что цель состоит в том, чтобы Главное выглядело как Dev2? Это должно получить вас там, или очень близко:

tf merge $/project/Dev2 $/project/Main -r -force -version:1~T 
tf resolve -auto:accepttheirs 

Используйте «тс folderdiff» для очистки любых сохраняющихся различий.

Другой основной вариант в общем случае заключается в том, чтобы удалить & воссоздать целевую ветку, но это действительно работает только тогда, когда целью является лист в дереве ветвей. Удаление Main в вашем случае нарушит его связь с Dev1 и остальной частью дерева. Кроме того, я рекомендую людям, идущим по этому пути, либо уничтожить ветку ошибочных (просто удалить), либо выбрать новое имя для разветвленной копии, чтобы избежать редких, но кошмарных ошибок в некоторых версиях TFS 2005/2008 , (2010 год не должен иметь этих проблем)

+0

Спасибо. Я просмотрел вариант/force, но не понял версию: 1 ~ T. До сих пор мне только приходилось использовать версию: C1234 ~ 1234 (для объединения одного набора изменений). Кроме того, в Главной ветке есть много других ветвей - поэтому удаление на самом деле не является вариантом. – stannius

Смежные вопросы