Parámetros de configuración del comando GREP:
Los parámetros de comando 'git grep' se utilizan para configurar este comando que han mencionado a continuación.
Nombre de parámetro | Objetivo |
---|---|
grep.tipo de patrón | Se usa para establecer el comportamiento de coincidencia predeterminado. |
grep.nombre completo | Está configurado en verdadero para habilitar la opción -full -name de forma predeterminada. |
grep.columna | Se establece en verdadero para habilitar la opción -column de forma predeterminada. |
grep.número de línea | Se establece en verdadero para habilitar la opción -n de forma predeterminada. |
grep.extendedregexp | Se establece en verdadero para habilitar la opción -extended -regexp de forma predeterminada. Pero esta opción no funcionará si el GREP. El tipo de patrón contiene otro valor en lugar del valor predeterminado. |
grep. hilos | Se usa para establecer el número de hilos de trabajadores de GREP. |
grep.Fallbacktonoindex | Si se establece en True, entonces el GIT GREP -NO -Index cuando el Git Grep se ejecuta fuera de un repositorio GIT. El valor predeterminado de este parámetro es falso. |
Opciones de comando GREP:
El 'Git Grep' El comando tiene muchas opciones para buscar el contenido del repositorio de diferentes maneras. Algunas de las opciones de GREP comúnmente utilizadas han descrito a continuación.
Opción | Objetivo |
---|---|
-yo, -indign | Se usa para coincidencias insensibles de casos de los patrones y los archivos. |
-I | Se usa para no coincidir con el patrón en archivos binarios. |
-máxima profundidad | Se usa para cada uno dado en la línea de comando. El valor de profundidad de -1 indica que no hay límite. Esta opción se ignora si contiene comodines activos. |
-r, -Cursivo | Funciona como -max-depth = -1, y es el valor predeterminado. |
-no recursivo | Funciona como -max -depth = 0. |
-w, -word -regexp | Se usa para que coincida solo con el patrón en el límite de la palabra. |
-v, -invert -coincidir | Se usa para seleccionar líneas no coincidentes. |
-nombre completo | Se utiliza para forzar las rutas a la salida en relación con el directorio superior del proyecto. |
-mi | Se usa para los patrones que comienzan con, y deben usarse con el Grep. |
-y, -o, -NO, (...) | Estas opciones se utilizan para definir los múltiples patrones para buscar. -o es el operador predeterminado y -y -y tiene mayor precedencia que -O. |
-E, -Extended -Regexp, -g, -Basic -Regexp | Se usa para patrones de regexp extendidos/básicos. |
-P, -perl -regexp | Se usa para patrones de expresión regulares compatibles con Perl. |
-F, -cuerdas fijas | Se usa para los patrones de cadena fijos. |
-F | Se usa para leer los patrones del archivo. |
-n, -number | Se usa para prefijo el número de línea a las líneas de juego. |
-o, -solo coincidente | Se usa para imprimir solo las partes coincidentes (no vacías) de una línea de coincidencia. |
-C, -Conta | Se usa para mostrar el número de líneas que coinciden. |
-romper | Se usa para imprimir una línea vacía entre las coincidencias de los diferentes archivos. |
-ayuda | Se utiliza para mostrar todas las opciones disponibles con la descripción del comando GREP. |
Habilitar la configuración de GREP:
Antes de ejecutar el comando 'git grep' de este tutorial, ejecute el siguiente comando para habilitar -extendido-regexp y -norte Opciones del comando GREP.
$ git config -global grep.Extendegexp verdadero
$ git config -global grep.Linenumber verdadero
Uso del comando GREP para buscar:
Un repositorio local nombrado librería se ha utilizado en este tutorial para verificar la salida del comando GREP para buscar contenido en el repositorio. El repositorio contiene dos archivos. Estos son lista de libros.php y berningla.php.
Ejecute el siguiente comando para buscar la palabra 'Tipo de libro' En los archivos del repositorio.
$ git grep 'book type' $ (git rev -list -all)
La siguiente salida muestra que la palabra 'Tipo de libro' existe en línea 1 del berningla.php archivo.
Ejecute el siguiente comando para buscar las líneas de los archivos del repositorio con los valores de confirmación SHA que contienen 'abucheo' Al inicio de los archivos. Aquí, el -i La opción se ha utilizado para la búsqueda insensible a los casos.
$ git grep -i 'boo*' $ (git rev -list --all)
La siguiente salida muestra que 'abucheo' contiene dos archivos en la línea número 1, pero la entrada para el lista de libros.php El archivo ha aparecido dos veces para dos comitaciones.
El patrón se ha buscado dentro del contenido del archivo del repositorio en los comandos anteriores. Ejecute el siguiente comando para buscar el contenido del archivo en particular.
$ git grep -f 'booktype.php.'
La siguiente salida muestra que la librería.php El archivo existe en el repositorio actual, y el archivo contiene una sola línea.
Ejecute el siguiente comando para buscar el patrón, 'reservar' dentro del contenido de los archivos del repositorio. Aquí, la opción -e se ha utilizado para la coincidencia de patrones.
$ git grep -e 'libro'
La siguiente salida muestra que ambos lista de libros.php y berningla.php Los archivos contienen la palabra 'Libro' en la línea número 1.
Ejecute el siguiente comando para buscar múltiples patrones dentro del contenido de los archivos del repositorio. Aquí, la opción -e se ha utilizado para la coincidencia de patrones regex, y la tubería (|) funciona como lógica o. Los archivos que contienen la palabra 'Libro' o 'autor' se mostrará después de ejecutar el siguiente comando.
$ Git Grep -e 'Libro*| Autor.'
La siguiente salida muestra que la palabra 'autor' existe dos veces en el autorinfo.php archivo y la palabra 'Libro' existe una vez en el lista de libros.php y berningla.php archivo.
Conclusión:
El 'Git Grep' es un comando útil para buscar el contenido específico en el repositorio de git. La búsqueda se puede hacer de diferentes maneras utilizando las diferentes opciones de este comando. Los usos de algunas opciones se han descrito en este tutorial mediante el uso de un repositorio de demostración.