web-dev-qa-db-fra.com

Comment restaurer dans Visual Studio TFS?

Je travaille sur un sous-module d'un grand projet pour lequel utiliser VSTS 2008.

J'ai besoin de restaurer le module vers une version antérieure (environ 4 check-ins précédents). J'ai essayé de le faire dans l'interface utilisateur de Visual Studio, et j'ai finalement réalisé il n'y a pas d'option de restauration.

Après quelques recherches, j'ai déterminé qu'il existe un téléchargement d'outils électriques censé prendre en charge la restauration via un outil en ligne de commande. Cependant, il semble qu'il n'y ait pratiquement aucune documentation à ce sujet.

Quelqu'un peut-il décrire étape par étape comment revenir à une version précédente dans VS2008? (À l'aide de Power Tools ou autrement).

Question bonus - quelqu'un sait-il si nous pourrions obtenir un support de restauration plus robuste dans VS2010?

50
alchemical

Cliquez avec le bouton droit sur le dossier dans l'explorateur de contrôle de source. Choisissez Obtenir une version spécifique. Choisissez la version que vous souhaitez obtenir (par changeset, date, label, etc.).

EDIT: À ce stade, votre version locale sera la version que vous souhaitez. Récupérez les fichiers modifiés, puis réarchivez-les. Cela fera apparaître l'assistant de fusion et il se plaindra probablement de la façon dont le serveur a une version plus récente que vous. Parcourez l'assistant et fusionnez les fichiers comme vous le souhaitez (l'une des options consiste à ignorer les modifications du serveur, ce qui ressemble à ce que vous voulez). À la fin de ce processus, il peut vous indiquer qu'aucun fichier n'a été archivé en raison du processus de fusion (ou quelque chose de cette nature), appuyez simplement sur OK, puis archivez à nouveau. Cela devrait accomplir ce dont vous avez besoin.

38
Brett Widmeier

Heureusement, cela a été rendu beaucoup plus facile dans TFS 2012. Il existe maintenant une option de restauration depuis l'interface graphique.

MSDN a plus d'informations sur la façon de le faire et les options disponibles. Voici le texte de MSDN sur la façon de revenir à une version spécifique:

Pour revenir à une version spécifique:

  1. Dans l'Explorateur de contrôle de code source, sélectionnez un élément, ouvrez son menu contextuel et choisissez Rollback.
  2. Dans la boîte de dialogue Restauration, sélectionnez Restauration vers une version spécifique.

Vous pouvez bien sûr également restaurer des ensembles de modifications entiers ou une collection d'ensembles de modifications. Et vous pouvez également facilement revenir à un moment précis si vous le souhaitez.

33
René

EST un moyen mais je ne le trouve pas joli .. Ouvrez l'invite de commande Visual Studio et ..

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC>tf rollback -?
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]]

Versionspec:
    Date/Time         D"any .Net Framework-supported format"
                      or any of the date formats of the local machine
    Changeset number  Cnnnnnn
    Label             Llabelname
    Latest version    T
    Workspace         Wworkspacename;workspaceowner
12
Andrei Rînea

août 2011 TFS Power Tools a ajouté la prise en charge complète de la restauration directement dans l'interface utilisateur de Visual Studio 2010.

Lien de téléchargement: http://visualstudiogallery.msdn.Microsoft.com/c255a1e4-04ba-4f68-8f4e-cd473d6b971f

Cette fonction est également incluse dans TFS 2012.

10
Warren Rumak

De l'article MSDN Comment: annuler un ensemble de modifications (VS2008 bien que d'autres versions soient disponibles)

Pour revenir à une version antérieure d'un fichier

  1. Dans l'Explorateur de contrôle de code source, cliquez avec le bouton droit sur le fichier que vous souhaitez restaurer, puis cliquez sur Obtenir une version spécifique. La boîte de dialogue Obtenir apparaît.
  2. Sous Type, cliquez sur Ensemble de modifications.
  3. Sous Ensemble de modifications, cliquez sur les ellipses (…).
  4. Dans la boîte de dialogue Rechercher les ensembles de modifications, utilisez les valeurs par défaut ou spécifiez des critères pour votre recherche, puis cliquez sur Rechercher.
  5. Sous Résultats, cliquez sur l'ensemble de modifications qui contient la version dans laquelle vous souhaitez rétablir le fichier, puis cliquez sur OK.
  6. Dans la boîte de dialogue Obtenir, activez la case à cocher Remplacer les fichiers inscriptibles qui ne sont pas extraits, puis cliquez sur Obtenir. La version antérieure du fichier est copiée dans votre dossier de travail local.
  7. Dans l'Explorateur de contrôle de code source, cliquez avec le bouton droit sur le fichier, puis cliquez sur Extraire pour modification.
  8. Dans la boîte de dialogue Extraire, cliquez sur Extraire.
  9. Dans l'Explorateur de contrôle de code source, cliquez à nouveau avec le bouton droit sur le fichier, puis cliquez sur Archiver les modifications en attente.
  10. Dans la boîte de dialogue Archiver - Fichiers source, cliquez sur le fichier, puis sur Archiver. La boîte de dialogue Résoudre les conflits s'affiche et un message explique qu'aucun fichier n'a été archivé car les deux versions comportent des modifications qui entrent en conflit.
  11. Dans la boîte de message, cliquez sur OK. La fenêtre Modifications en attente - Conflits apparaît.
  12. (Facultatif) Dans la barre d'outils de la fenêtre Modifications en attente, cliquez sur Comparer local au serveur. Le serveur et les copies locales s'affichent côte à côte afin que vous puissiez revoir votre décision avant d'annuler les modifications
  13. Dans la fenêtre Modifications en attente, cliquez sur Conserver la version locale.
  14. Dans l'Explorateur de contrôle de code source, cliquez avec le bouton droit sur le fichier, puis cliquez sur Archiver les modifications en attente.
  15. Dans la boîte de dialogue Archiver - Fichiers source, cliquez sur Archiver.
6
John MacIntyre

Question bonus - quelqu'un sait-il si nous pourrions obtenir un support de restauration plus robuste dans VS2010?

Oui. Contrairement aux outils électriques, qui sont codés directement par rapport à l'API client 2008 existante, TFS 2010 dispose d'une nouvelle API pour exécuter des restaurations directement sur le serveur. Cela les rend beaucoup plus rapides et plus fiables, tout en ajoutant des fonctionnalités qui n'étaient pas du tout possibles en 2008, telles que la restauration de l'historique des fusions.

6
Richard Berg

Dans Visual Studio 201 cela est devenu une tâche plus facile. Pour restaurer, procédez comme suit:

  1. Dans Source Control Explorer, sélectionnez la solution/le projet
  2. Faites un clic droit, puis sélectionnez "Afficher l'historique"
  3. Dans la vue historique, sélectionnez l'ensemble de modifications que vous souhaitez annuler
  4. Cliquez avec le bouton droit, puis sélectionnez Afficher les détails de l'ensemble de modifications. Cela ouvre l'explorateur d'équipe.
  5. Dans Team Explorer, cliquez sur "Rollback":
    Team Explorer
  6. Pour rendre la restauration définitive, vous devez check in maintenant. Ou vous pouvez apporter des modifications à la version restaurée, puis vous enregistrer.
1
Matt