100 votes

Comment annuler la validation d'un autre utilisateur dans TFS ?

En tant qu'administrateur résident de TFS, il m'arrive parfois qu'on me demande d'annuler un checkout (généralement un verrou) qu'un utilisateur a sur un certain fichier qui a été ajouté au contrôle de source.

Comment annuler le checkout d'un autre utilisateur?

151voto

brett rogers Points 2376

Il existe au moins 2 façons différentes de faire cela :

Ligne de commande

Il existe un utilitaire en ligne de commande appelé Tf.exe qui est fourni avec Team Explorer. Trouvez la documentation ici. Il peut être accédé en lançant une fenêtre d'invite de commandes Visual Studio. La syntaxe de la commande est :

tf undo [/workspace:nomdurepertoire[;proprietairedurepertoire]] 
[/serveur:nomduserveur] [/récursif] emplacementspec [/noprompt]

Pour un fichier

tf undo /workspace:nomdurepertoire;proprietairedurepertoire $/nomduprojet/nomdufichier.cs

Interface graphique utilisateur (GUI)

La deuxième méthode se fait via l'interface graphique, mais n'est pas inclus par défaut - vous devez installer les TFS Power Tools. Consultez ici pour plus de détails sur la façon d'utiliser cette méthode.

Gardez à l'esprit qu'avec l'une ou l'autre méthode, vous aurez besoin des droits appropriés. Les autorisations sont appelées "Annuler les modifications des autres utilisateurs" et "Déverrouiller les modifications des autres utilisateurs". Ces autorisations peuvent être consultées en :

  1. Cliquer avec le bouton droit sur le projet, le dossier ou le fichier désiré dans l'Explorateur de contrôle de Source
  2. Sélectionner Propriétés
  3. Sélectionner l'onglet Sécurité
  4. Sélectionner l'utilisateur ou le groupe approprié dans la section Utilisateurs et Groupes en haut
  5. Consulter la section "Permissions pour [utilisateur/groupe]:" en bas

Supprimer l'espace de travail

tf workspace /delete Nomdelespace;Utilisateur
             /serveur:http://serveur:8080/tfs/MaCollectionEquipe

0 votes

Pour moi, la commande tf undo /workspace:mydesk *.sdf signale "Aucune modification en attente" mais ne défait pas le check-out (verrouillage)

0 votes

J'ai oublié le chemin du serveur TFS avant mon itemspec *.sdf, j'avais supposé que cela fonctionnerait à partir du répertoire actuel. La ligne de commande que vous donnez fonctionne maintenant pour moi.

1 votes

Assurez-vous d'utiliser des guillemets autour des chemins avec des espaces, sinon vous pourriez obtenir un message tel que : "Aucun changement en attente n'a été trouvé pour $/xxx"

36voto

Marek Karbarz Points 14870

La façon la plus facile que j'ai trouvée est d'utiliser l'application gratuite TFS Sidekick. Elle a une option pour afficher et annuler le checkout d'autres utilisateurs.

5 votes

C'est en dessous de "Status Sidekick". Recherche, sélectionnez des fichiers, annuler.

1 votes

Si l'utilisateur a quitté l'entreprise, vous devez connaître le nom d'utilisateur de l'Active Directory (qui n'est pas toujours le même que le prénom et/ou le nom de l'utilisateur). Ma société attribue des noms d'utilisateur numérotés, j'ai donc dû rechercher l'utilisateur retiré avant de pouvoir le chercher dans VS ou dans le Status TFS Sidekick.

0 votes

Cela a fonctionné de manière étonnante. tellement plus facile que d'essayer de trouver des noms d'espace de travail et ainsi de suite en utilisant l'outil en ligne de commande.

29voto

Je viens de rencontrer ce problème moi-même et j'ai trouvé une manière plus facile de nettoyer les anciens espaces de travail.

  1. Dans Visual Studio, ouvrez Explorateur de contrôle de source.

  2. Dans le menu déroulant 'Espace de travail', sélectionnez 'Espaces de travail...'

  3. Une boîte de dialogue apparaîtra montrant les espaces de travail sur votre PC actuel. Sélectionnez 'Afficher les espaces de travail distants'

  4. Vous verrez maintenant également les espaces de travail de votre ancien PC (tant qu'ils proviennent du même compte utilisateur). Sélectionnez les anciens espaces de travail et cliquez sur 'Supprimer'. Cela devrait supprimer l'ancien espace de travail de TFS ainsi que tout contrôle de version persistant.

Je suis sûr qu'Arne a trouvé une solution mais j'espère que cela aidera d'autres personnes qui recherchent le problème sur Google.

8 votes

Cela fonctionne bien si vous êtes le propriétaire de l'espace de travail, surtout pour nettoyer votre liste actuelle d'espaces de travail. Pas si bon pour supprimer les espaces de travail d'autres utilisateurs ou les verrous de caisse :-).

0 votes

D'accord. Cela fonctionne bien pour supprimer vos propres verrous de paiement depuis un autre PC.

2 votes

Correct, mais la question concerne comment déverrouiller des fichiers qui sont checkés par un utilisateur DIFFÉRENT.

9voto

Maryam Points 51

Sélectionnez votre fichier dans TFS Sidekick, puis au-dessus de la liste, vous avez un "Annuler la modification en attente". Cliquez dessus et la modification sera annulée :) L'icône est similaire à l'icône "Annuler" dans MS Word Obtenez TFS sidekicks ici http://www.attrice.info/cm/tfs/index.htm

0 votes

Outil le plus simple à utiliser. M'a vraiment aidé à annuler un changement au niveau de la solution qu'un ex-collègue avait vérifié

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