2009-04-21 7 views
154

J'utilise Team Foundation Server 2008 (SP 1) et j'ai besoin de déplacer plusieurs fichiers d'un dossier à un autre (pour conserver l'historique des fichiers). En plus de Team Explorer (avec SP 1), j'ai aussi installé la dernière version de TFS Power Tools (octobre 2008) (pour l'intégration de Windows Shell).Déplacement de plusieurs fichiers dans le contrôle de source TFS

Maintenant, le problème est que je n'arrive pas à sélectionner et à déplacer plusieurs fichiers via le shell ou la fenêtre Source Control Explorer. Je peux déplacer des fichiers individuels (en cliquant droit + "Déplacer") et je peux déplacer des dossiers entiers (même opération) mais quand je sélectionne plusieurs fichiers (dans un dossier) l'élément de contexte "Déplacer" est grisé/désactivé.

Est-ce que quelqu'un sait si c'est possible .. et si non .. pourquoi pas !?

Quelqu'un peut-il suggérer une solution de contournement qui ne soit pas trop compliquée?

S'il vous plaît voter ici:https://connect.microsoft.com/VisualStudio/feedback/details/715041/support-moving-multiple-files-in-tfs-source-control-exploreret icihttp://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2271540-allow-to-move-more-than-one-file-at-once-in-tfs-so

enter image description here

enter image description here

Répondre

133

Utilisez l'outil tf.exe du Visual Studio commandline - il peut gérer des jokers:

tf.exe move <olditem> <newitem> 

Exemple:

tf.exe move "$/My Project/V*" "$/My Project/Archive" 

[EDIT] Comme il est indiqué dans les commentaires: move est un alias pour renommage. Les deux commandes déplacent l'histoire.

+7

Cette [autre réponse] (http: // stackoverflow.com/questions/770726/moving-multiple-fichiers-in-tfs-source-control/5337504 # 5337504) est le meilleur ici. Le paramètre 'move' est non documenté et ne déplace pas l'historique, tandis que le paramètre' renommer 'de l'autre réponse * est * documenté et déplace également l'historique. –

+12

Pour l'anecdote, il semble que dans TFS 2010 la commande move effectue un changement de nom qui déplace l'historique. –

+9

à partir de l'aide de TF.EXE: Vous pouvez utiliser la commande renommer ou le déplacement d'alias pour déplacer un fichier ou un dossier vers un nouvel emplacement. alors déplacez et renommez sont exactement la même chose. –

-9

Collez tous les fichiers que vous souhaitez déplacer, sous un dossier, puis déplacez ce dossier.

+4

Ils sont déjà en SC, donc ça ne va pas le couper –

54

Utilisez renommer au lieu de déplacer

tf.exe rename "$/PROJECT/SharedLibs/Log4Net/*.*" "$/PROJECT/SharedLibs/3rdParty/" 
tf.exe rename "$/PROJECT/SharedLibs/ZipLib/*.*" "$/PROJECT/SharedLibs/3rdParty/" 

Check it la documentation d'aide: TFS Command Line Reference

+0

Le lien ci-dessus lance un HTTP500, au cas où il resterait en panne, voici la référence de la ligne de commande TFS à partir de MSDN: http://msdn.microsoft.co m/fr-us/library/z51z7zy0.aspx –

+8

'move' est juste un alias pour' renommer', donc peu importe ce que vous utilisez –

+0

J'utilise le contrôle de source TFS de Visual Studio Online par exemple. https://namgivu.visualstudio.com. Et la liste de l'espace de travail en appelant 'tf workspaces' n'a pas l'entrée pour mon mappage de référentiel. –

30

Holan Jan a écrit une extension Visual Studio qui fournit un 'déplacement' pour plusieurs fichiers dans l'explorateur de contrôle de source (c.-à-d. en utilisant une interface graphique) fonctionne un régal, a également un support pour les versions récentes.

pour VS2017: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-18397

pour VS2015: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-13343

pour VS2013: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-11508

pour VS2012: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-8896

Sous le capot, il utilise les mêmes commandes mentionnées ci-dessus, mais il est juste un peu plus convivial à utiliser.

+0

Excellent! C'est la seule chose qui a fonctionné pour moi, en utilisant VS2010: https://visualstudiogallery.msdn.microsoft.com/c6642e7f-1a58-4ff0-aef9-0322dcc2b28d –

+0

@Sharmin, récemment (dans le nôtre) nous avons déménagé du code à un nouveau projet et les nouveaux développeurs ont dit qu'ils ne pouvaient pas voir l'histoire. Beaucoup de confusion puisque nos vieux développeurs qui ont fait le port pourraient voir l'histoire bien. Il s'est avéré être un rappel que lorsque vous faites un 'move', les anciennes versions restent au même endroit (au moins quand vous passez d'un projet à un autre) - si vous n'avez pas d'autorisations sur le dépôt original, il apparaîtra pas d'historique pour le fichier. Peut-être que c'est la même chose que votre situation? –

+0

Cette extension est fantastique - elle permet un tas de fonctionnalités supplémentaires dans l'explorateur de contrôle de source, dont le déplacement de plusieurs fichiers à la fois n'est qu'une seule pièce. Je le recommande fortement. – SqlRyan

Questions connexes