2010-03-15 5 views
0

Nous avons récemment tenté une grande fusion "cerise choisie". Nous avons d'abord fait une fusion complète d'une branche de développement enfant dans la branche principale Parent, puis fusionné la branche principale dans une autre branche de développement enfant, puis nous avons tenté de fusionner la deuxième branche de développement vers la fusion. Il y avait beaucoup de checkins, y compris les renames et les suppressions; et quand ça ne fonctionnait pas, nous avons fait beaucoup de reculs sur le TFPT.Comment récupérer après une erreur de fusion dans TFS 2008?

Quelles options avons-nous pour récupérer ici? Des choses comme sans fondement, force, etc fusionnent? Revenez à un moment donné et d'une manière ou d'une autre, essayez à nouveau?

Répondre

1

Je suppose que le but est de faire ressembler Main à Dev2? Cela devrait vous arriver, ou très près:

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

utilisation folderdiff tf 'pour nettoyer toutes les diffs persistants.

L'autre option principale en général est de supprimer & recréer la branche cible, mais cela ne fonctionne réellement que si la cible est une feuille dans votre arborescence. Supprimer Main dans votre cas perturberait sa relation avec Dev1 et le reste de l'arbre. Aussi, je recommanderais aux gens descendant ce chemin Détruire la branche errante (vs simplement Supprimer), ou choisir un nouveau nom pour la copie rebranchée, afin d'éviter les bogues rares mais cauchemardesques dans certaines versions de TFS 2005/2008 . (2010 ne devrait pas avoir ces problèmes)

+0

Merci. J'avais recherché l'option/force mais je n'avais pas compris la version: 1 ~ T partie. Jusqu'à présent, j'ai seulement eu l'occasion d'utiliser la version: C1234 ~ 1234 (pour fusionner un seul ensemble de modifications). En outre, la branche principale a beaucoup d'autres branches - la suppression n'est donc pas vraiment une option. – stannius

Questions connexes