2009-04-21 22 views
154

Estoy usando Team Foundation Server 2008 (SP 1) y necesito mover varios archivos de una carpeta a otra (para conservar el historial de archivos). Además de Team Explorer (con SP 1), también tengo instalada la última versión de TFS Power Tools (octubre de 2008) (para la integración de Windows Shell).Mover múltiples archivos en TFS Source Control

Ahora, el problema es que parece que no puedo seleccionar y mover varios archivos a través del shell o la ventana de Source Control Explorer. Puedo mover archivos individuales (haciendo clic derecho + "Mover") y puedo mover carpetas enteras (misma operación) pero cuando selecciono varios archivos (en una carpeta), el elemento de contexto "Mover" está atenuado/gris.

¿Alguien sabe si esto es posible ... y si no ... ¿por qué no?

¿Alguien puede sugerir una solución que no sea demasiado complicada?

favor votar hasta aquí:https://connect.microsoft.com/VisualStudio/feedback/details/715041/support-moving-multiple-files-in-tfs-source-control-explorery aquíhttp://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

Respuesta

133

Usar la herramienta tf.exe desde el estudio de línea de comandos de Visual - que puede manejar comodines:

tf.exe move <olditem> <newitem> 

Ejemplo:

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

[EDIT] Como se señaló en los comentarios: movimiento es un alias de cambio de nombre. Ambos comandos mueven el historial.

+7

Esta [otra respuesta] (http: // stackoverflow.com/questions/770726/moving-multiple-files-in-tfs-source-control/5337504 # 5337504) es el mejor aquí. El parámetro 'move' no está documentado y no mueve el historial, mientras que el parámetro * rename' de la otra respuesta * está * documentado y también mueve el historial. –

+12

Para el registro, parece que en TFS 2010 el comando mover realiza un cambio de nombre que mueve el historial. –

+9

desde la ayuda de TF.EXE: puede usar el comando de cambio de nombre o el movimiento de alias para mover un archivo o carpeta a una nueva ubicación. así que mover y renombrar son exactamente lo mismo. –

-9

Pegue todos los archivos que desee mover, debajo de una carpeta y luego mueva esa carpeta.

+4

Ya están en SC, así que eso no va a cortar. –

54

Uso cambiar el nombre de en lugar de movimiento

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

Compruébelo usted mismo la documentación de ayuda: TFS Command Line Reference

+0

El enlace de arriba arroja un HTTP500; en caso de que permanezca inactivo, aquí está la referencia de la línea de comandos TFS de MSDN: http://msdn.microsoft.co m/en-us/library/z51z7zy0.aspx –

+8

'move' es solo un alias para' rename', por lo que realmente no importa que use –

+0

Uso el control de fuente TFS de mi Visual Studio Online, p. https://namgivu.visualstudio.com. Y al enumerar el espacio de trabajo al llamar 'tf workspaces' no tiene la entrada para mi mapeo de repositorio. –

30

Holan Ene ha escrito una extensión de Visual Studio que proporciona "movimiento" para múltiples archivos dentro del explorador de control de código fuente (es decir, usando una GUI) Funciona como un regalo, también tiene soporte para versiones recientes.

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

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

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

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

Bajo el capó se hace uso de los mismos comandos mencionados anteriormente, pero es sólo un poco más amigable de usar.

+0

¡Excelente! Esto es lo único que funcionó para mí, utilizando VS2010: https://visualstudiogallery.msdn.microsoft.com/c6642e7f-1a58-4ff0-aef9-0322dcc2b28d –

+0

@Sharmin, recientemente (en el nuestro) hemos reubicado algunos códigos en un nuevo proyecto y los nuevos desarrolladores dijeron que no podían ver el historial. Mucha confusión ya que nuestros antiguos desarrolladores que hicieron el puerto pudieron ver la historia bien. Resultó ser un recordatorio de que al hacer un 'movimiento', las versiones anteriores permanecen en la misma ubicación (al menos cuando se mueven entre proyectos). Si no tiene permisos en el repositorio original, aparecerá como si hubiera sin historial para el archivo. Posiblemente eso es lo mismo que tu situación? –

+0

Esta extensión es fantástica: permite un montón de funcionalidades adicionales en el explorador de control de código fuente, del cual mover varios archivos a la vez es solo una pieza. Lo recomiendo encarecidamente – SqlRyan