92 votes

Comment annuler un check-in TFS ?

J'aimerais revenir sur une modification que j'ai effectuée récemment dans TFS. Dans Subversion, c'était assez simple. Cependant, cela semble être un incroyable casse-tête dans TFS :

Option 1 : Obtenir une version antérieure

  1. Obtenir manuellement la version antérieure de chaque fichier
  2. Vérifier pour éditer
  3. Échec - la vérification (dans VS2008) m'oblige à obtenir la dernière version.

Option 2 : Obtenir TFS Power Tools

  1. Télécharger Team Foundation Power Tools
  2. Émettre une commande de retour en arrière à partir de la ligne cmd
  3. Échec - cela ne fonctionnera pas s'il y a d'autres changements en attente.

Option 3 : Annuler manuellement les modifications

  1. annuler manuellement mes modifications, puis livrer un nouveau jeu de modifications

Question

Comment puis-je revenir à un jeu de modifications antérieur dans TFS ?

63voto

Helephant Points 4085
  1. Télécharger et installer Outils puissants de Team Foundation .
  2. Ouvrez l'invite de commande de Visual Studio
  3. Naviguez jusqu'au répertoire du système de fichiers sur lequel TFS est mappé. Si vous ne le faites pas, vous obtiendrez une erreur "Impossible de déterminer l'espace de travail" lorsque vous essayerez de revenir en arrière.
  4. Assurez-vous que tout le reste est enregistré ou mis en rayon.
  5. lancez tfpt rollback pour faire apparaître l'interface.
  6. Choisissez les jeux de modifications que vous voulez annuler
  7. Vérifiez les nouvelles versions des fichiers que vous avez annulés.

Le gros inconvénient de cet outil est qu'il voudra rafraîchir tout ce qui se trouve dans votre espace de travail avant que vous puissiez fusionner. J'ai contourné ce problème en créant un nouvel espace de travail uniquement pour le retour en arrière, qui correspondait directement à l'endroit de l'arbre source où se trouvaient les fichiers affectés.

Si vous avez besoin d'aide pour déterminer quels jeux de modifications doivent être annulés, je trouve que l'outil de revue de code dans le logiciel gratuit Coup de pied latéral de la Fondation de l'équipe add-in très utile.

24voto

Happer Points 199

Votre solution n° 1 fonctionnera : 1. récupérer manuellement la version antérieure de chaque fichier

  1. vérifier pour éditer

  2. Vérifiez le fichier et Ignorez les modifications du serveur lorsque vous y êtes invité.

La raison pour laquelle il a échoué pour vous est que vous devez avoir le l'option "Obtenir la dernière version de l'article au moment du paiement" est activée. Désactivez cette option en allant dans Outils...Options...Contrôle de la source...Visual Studio Tema Foundation Server et en décochant "Get latest version of item on check out".

Cheers

18voto

Kevin Lo Points 140

Le retour en arrière a été déplacé de tfpt.exe à tf.exe, l'outil de contrôle de version Team Foundation.

TF - Team Foundation Version Control Tool, Version 10.0.30319.1
Copyright (c) Microsoft Corporation.  All rights reserved.

Rolls back the changes in a single or a range of changesets:
tf rollback /changeset:changesetfrom~changesetto [itemspec] [/recursive]
            [/lock:none|checkin|checkout] [/version:versionspec]
            [/keepmergehistory] [/noprompt] [/login:username,[password]]

tf rollback /toversion:versionspec itemspec [/recursive]
            [/lock:none|checkin|checkout] [/version:versionspec]
            [/keepmergehistory] [/noprompt] [/login:username,[password]]

14voto

Ed Blankenship Points 3382

Vous disposez de deux options pour annuler un jeu de modifications dans le contrôle de version de TFS 2010. La première option consiste à utiliser l'interface utilisateur (si vous disposez de la dernière version de l'application Outils puissants de TFS 2010 installé).

Rollback Changeset in UI for TFS 2010

L'autre option consiste à utiliser l'application de contrôle de version TFS 2010 en ligne de commande :

tf.exe rollback

J'ai des informations sur les deux approches sur mon article de blog disponible ici : http://www.edsquared.com/2010/02/02/Rollback+Or+Undo+A+Changeset+In+TFS+2010+Version+Control.aspx

14voto

Dave Roberts Points 459

Une autre façon de faire fonctionner votre option 1 est d'inverser l'ordre des étapes :

  1. Vérifiez les articles
  2. Obtenir la version spécifique à l'ancienne version
  3. Enregistrez (en ignorant la boîte de dialogue "Attention, la version du serveur est plus récente") OU dans la section des conflits de la boîte de dialogue "Modifications en attente", résolvez les conflits en conservant la version locale.

Cela fonctionnera même si vous avez activé l'option "Get Latest On Checkout".

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X