2010-07-22 8 views
0

je fis les actions suivantes dans TFS:Refaire un lot de changements

  1. Accidentellement apporté quelques modifications à un tas de fichiers dans le coffre
  2. réalisé.
  3. a fusionné les modifications apportées à la branche destinée
  4. les modifications annulées dans le coffre (à l'aide TFPT rollback)
  5. plus tard, lors de l'intégration régulière en avant du tronc, je défais les changements dans la branche.

Comment puis-je réappliquer les modifications? Il y a trois changesets et environ 80 fichiers en question.

Répondre

0

Ce que je fini par faire était une fusion forcée:

tf merge /r /force $/source/trunk $/source/branch1 /v:C123~125 

Je veillerai cet ensemble de changements soigneusement quand on inverse l'intégration dans le tronc.

J'ai également essayé un workflow astucieux d'utilisation de tfpt pour restaurer, mettre en veille et libérer/migrer. Malheureusement, le dialogue de résolution des conflits dans tfpt unshelve manque un peu - il manque des choses comme des boutons par défaut et autres, donc j'ai dû cliquer une demi-douzaine de fois par fichier. J'ai donc décidé après quelques fichiers d'essayer autre chose d'abord.

2

A deux manières de le faire, mais sans doute le plus rapide seraient ici:

  1. Vérifiez les fichiers concernés (pour modifier) ​​dans la branche. Obtenir la version spécifique de la ligne de réseau pour ces fichiers.
  2. Copiez ces fichiers dans le répertoire de la branche appropriée.
  3. Arrivée.

Vous pouvez aussi envisager de faire reculer le changeset rollback dans le coffre et refaire ce que vous avez fait (moins le undo).

+0

Il y avait tellement de changements. Vous pourriez même dire que la partie la plus importante des modifications était la liste des fichiers concernés. – stannius

+0

Oui. J'ai vu ça arriver. Ce qui fonctionne le mieux dans cette situation est un espace de travail propre et un fichier batch. – Robaticus