TFS no proporciona esa función de fábrica, pero puede usar Powershell para combinar funciones TFS existentes para obtener lo que necesita.
Mi plan es utilizar primero tf dir
obtener una lista de archivos, a continuación, utilizar tf view
para obtener contenido de los archivos y, finalmente, alimentar a los contenidos Select-String
para encontrar la cadena (o expresiones regulares) que estamos buscando.
Puede comenzar con:
tf dir /recursive $/
pero esa lista es probablemente va a ser enorme, así que trate de limitar su búsqueda a un pequeño alcance, como:
tf dir /recursive $/some/path/*.cs
El siguiente paso es Transforme los resultados del paso anterior en un formato que luego podamos ingresar en tf view
. Aquí es un script de PowerShell que hace que:
(tf dir /recursive $/) -join "+" -replace ":", "" -replace "\+\+", "`n" -split "`n" | %{ $arr = $_ -split "\+"; $arr | select -Skip 1 | %{ $arr[0] + '/' + $_ } }
Ahora vamos a canalizar la lista en tf view
y luego Select-String
:
... | %{ $file = $_ ; if (tf view "$file" /console | Select-String "some string") { Write-Host $file } }
No se olvide de cambiar la parte que dice "some string"
.
En total, se obtiene:
(tf dir /recursive $/) -join "+" -replace ":", "" -replace "\+\+", "`n" -split "`n" | %{ $arr = $_ -split "\+"; $arr | select -Skip 1 | %{ $arr[0] + '/' + $_ } } | %{ $file = $_ ; if (tf view "$file" /console | Select-String "some string") { Write-Host $file } }
Ah, y no se olvide de reemplazar la parte que dice "some string"
con su consulta de búsqueda actual.
La respuesta de Grant Holliday de la pregunta de TFS 2008 que usted cita sigue siendo exacta para TFS 2010. Una cosa a tener en cuenta, su cita sobre * "volver a agregar" * sugiere que existió una vez en TFS. Me doy cuenta de que existía una búsqueda (rudimentaria) en VSS, pero quiero señalar específicamente que VSS y TFS son dos productos separados y no tienen linaje compartido. (Es decir que no es el caso que la búsqueda existió alguna vez en TFS y la eliminamos).) –
Como mencioné en mi pregunta, VSS tuvo una gran búsqueda de código que buscará a través de los archivos de código para su consulta (no hay nada que instalar, simplemente viene con él como una característica básica). TFS nunca llegó con él ni MS le permitió obtenerlo como un complemento. El linaje es claro. Este es el producto de control de origen de Microsoft. El hecho de que haya cambiado los nombres no significa que no almacenen código, permiten registros y pagos, y archivos de versión. – DMCS
No * cambió los nombres *. Son productos completamente diferentes. Hay exactamente cero códigos en común. –