2010-01-20 8 views
6

Me gustaría obtener un lote de archivos de un directorio por fecha excepto para un archivo. Me gustaría ver todos los archivos y ver que sí, los archivos 1 a n son las versiones antiguas y el archivo 0 es la nueva versión.¿hay alguna manera fácil de obtener un archivo y tener la última marca de verificación como la marca de tiempo del archivo?

La forma más simple de hacer eso, me parece, es a obtener los archivos y hacer que la marca de tiempo del archivo local sea la última vez que se registró ese archivo. Sin embargo, no creo que eso sea posible en TFS sin codificación personalizada. ¿Hay una forma fácil de hacer esto?

+0

posible duplicado de [marca de tiempo al conseguir Lo último de TFS y qué importa?] (Http: // stackoverflow.com/questions/15230328/timestamp-when-getting-latest-from-tfs-and-does-it-matter) – DavidRR

Respuesta

2

En la versión actual de TFS (incluido TFS 2010), las marcas de tiempo de los archivos son siempre el tiempo que se descargaron al hacer el get.

No entiendo muy bien la razón detrás de lo que está tratando de hacer, pero parece que lo más fácil sería escribir una simple clase .NET o script de powershell que hiciera lo que necesitaba utilizando la parte de VersionControl de el TFS API. Podrías consultar las últimas fechas de check-in, etc. sin siquiera tener que descargar el archivo en cuestión; simplemente mirarías los ID del conjunto de cambios de cada archivo para ver cuál es el más nuevo.

+0

Acabo de probar esto en TFS2008 y la etiqueta de archivo fue la vez que obtuve el archivo, no el momento en que el archivo fue última vez que se registró. ¿Hay algún ajuste? – jcollum

+0

No, no es configurable. –

+2

Esto es algo que la mayoría de SCM puede hacer, pero aparentemente TFS no puede. Parece que necesito escribir muchos scripts de PowerShell para que TFS funcione como un control de fuente normal. – jcollum

1

Sí, hay una manera sencilla de hacer esto si está utilizando al menos TFS 2012 y Visual Studio 2012. A partir de la documentación de Visual Studio en advanced workspace options: Tiempo

del archivo:

  • Elija marcando si desea que el sello de fecha y hora de cada archivo coincida generalmente con el sello del conjunto de cambios de la versión i n su espacio de trabajo . Unos problemas y excepciones son:

    • Al modificar el archivo local, el sello de fecha y hora coincidirá con la fecha y hora en que ha modificado el archivo.

    • Esta característica está disponible solo si está utilizando Visual Studio 2012 o posterior y Visual Studio Team Foundation Server 2012 o posterior.

    • La configuración no se aplica a las carpetas, a menos que exista una operación de agregar o eliminar pendiente en un archivo contenido en la carpeta.

    • Es posible que no pueda construir su proyecto de código de forma incremental. En cambio, tendrás que reconstruir).

  • Elija actual si desea que la marca de fecha y hora para que coincida con la fecha y hora cuando se modificó por última vez el archivo local. Por ejemplo, un miembro del equipo registró el último cambio en el archivo el lunes. El Martes, realiza una operación get para actualizar el archivo. La fecha y la marca de tiempo se establecen en martes.

Cuestiones relacionadas