2009-06-22 26 views
7

Tengo una carpeta bajo el sistema de control de fuente TFS, digamos en la ruta "$/My Project/Branches/Dev".¿Cómo obtener el historial de carpetas completo de TFS mediante programación?

Recientemente se mudó de otra ubicación, que era "$/My Project/Dev".

Ahora cuando solicito su historial desde el Source Control Explorer en VS obtengo el historial completo, donde la operación de movimiento descrita fue solo uno de los conjuntos de cambios.

Pero cuando trato de obtener el historial con TFS SDK, solo consigo que el historial reciente comience con el movimiento de la carpeta. ¿Cómo puedo obtener la historia completa?

estoy usando el siguiente código:

TeamFoundationServer tfs = TeamFoundationServerFactory.GetServer(tfsServerURL); 
    VersionControlServer vcs = (VersionControlServer)tfs.GetService(typeof(VersionControlServer)); 

    // Null means All 
    VersionSpec versionFrom = null; 

    System.Collections.IEnumerable enumerable = vcs.QueryHistory(_tfsPath, 
      VersionSpec.Latest, 
      0, 
      RecursionType.Full, 
      "", 
      versionFrom, 
      VersionSpec.Latest, 
      Int32.MaxValue, 
      true, 
      true); 

Respuesta

14

Usted está de paso slotMode = true. Cambia el parámetro final a falso.

"Modo de ranura" significa "consulta por ruta, no por historial". Es útil si solo recuerda el nombre anterior de un elemento pero no dónde lo movió, o si> 1 elemento ha ocupado una ruta determinada.

Para referencia futura, si desea ver qué parámetros VS (o tf.exe) está pasando al servidor para que pueda imitarlos, turn on tracing.

Cuestiones relacionadas