2012-06-12 7 views
15

Quiero buscar una frase específica (es decir, "comma_delimited") en un archivo específico (es decir, "index.php") en una rama específica (es decir, "ABC-123"). La razón para esto es que el texto ya no está en el archivo y quiero ver en qué confirmación se realizó, sin mirar cada revisión de este archivo en esta rama.cómo usar las herramientas de búsqueda de tortoisehg?

¿Hay alguna manera de hacer esto en tortoisehg? Veo que hay un botón de búsqueda que muestra un panel de búsqueda donde puede ingresar patrones, pero no tengo ni idea de cómo usarlo (y no sé cómo escribir patrones), y después de buscar en Google por algún tiempo, no encontré ninguna utilidad información sobre eso

Gracias

Respuesta

11

Hay dos botones de búsqueda - uno a buscar en el repositorio y el otro es para filtrar los gráficos de revisión. Quizás presionaste el equivocado?

Si utiliza el menú para seleccionar Ver/Buscar, selecciona la vista de búsqueda que desea.

Se le debe mostrar un gran panel debajo del gráfico de revisión con una serie de controles para rellenar.

  • Enter "comma_delimited" en el primer control de edición (en la misma línea que la búsqueda y los botones de paro que están a la derecha)
  • Seleccione el botón de opción "Todo el historial" debajo de ese control de edición.
  • Introduzca **index.php en el control de edición con la etiqueta "Incluye" (o la ruta completa a index.php si tiene más de uno y desea limitar la búsqueda a un archivo en particular)
  • Pulse el botón de búsqueda

La lista en la parte inferior de la ventana ahora debería mostrar los detalles de las revisiones que incluyen esa frase. Se mostrará cuando se añadió (con el prefijo '+') y cuando fue removido (con el prefijo '-')

Aquí hay una ventana Ejemplo de búsqueda: Example search window

+0

mi repositorio tiene una historia muy grande con muchas ramas, que no quiero para buscar todas las revisiones de index.php, sólo los cambios realizados en esta rama. ¿es eso posible? –

+0

No parece haber esa opción desde la interfaz de usuario. Solo mirar un solo archivo en lugar de todo el repositorio lo acelera mucho, así que tal vez sea suficiente. Desde la línea de comandos puede limitar la búsqueda a un rango de revisiones o una sola rama: 'hg grep --all -I" ** index.php "-r" branch (branch_name) "comma_delimited' pero eso no parece para trabajar en la vista de búsqueda de tortoisehg. –

+0

perfecto, gracias –

1

El campo de búsqueda TortoiseHg apoya revsets . Parece que hay una función grep(regex), pero parece que es solo una variante regex de la función de palabra clave, que solo busca "confirmar el mensaje, el nombre de usuario y los nombres de los archivos modificados". Gorrón. Parece que sólo está opción es utilizar Mercurial's grep command:

> hg grep -r ABC-123 'comma_delimited' index.php 
+0

miré el enlace que publicaste ... el grep "Buscará el mensaje de confirmación, el nombre de usuario y los nombres de los archivos modificados para la cadena". pero no el texto en un archivo ... –

+0

@estherh Gracias. He corregido mi respuesta. –

Cuestiones relacionadas