Parâmetros de configuração do comando grep:
Os parâmetros de comando 'Git Grep' são usados para configurar este comando mencionado abaixo.
Nome do parâmetro | Propósito |
---|---|
grep.Tipo de Padrão | É usado para definir o comportamento de correspondência padrão. |
grep.nome completo | Está definido como true para ativar a opção -full -name por padrão. |
grep.coluna | Ele está definido como true para ativar a opção -Column por padrão. |
grep.número da linha | Está definido como true para ativar -n opção por padrão. |
grep.ExtendedRegexp | Ele está definido como true para ativar a opção -extenção -regexp por padrão. Mas esta opção não funcionará se o grep. Tipo de padrão contém outro valor no lugar do valor padrão. |
grep. tópicos | É usado para definir o número de fios de trabalhador grep. |
grep.FallbacktonoIndex | Se estiver definido como true, então o Git Grep -No -Index quando o Git Grep executou fora de um repositório Git. O valor padrão deste parâmetro é falso. |
Opções do comando Grep:
O 'Git Grep' O comando tem muitas opções para pesquisar o conteúdo do repositório de maneiras diferentes. Algumas das opções de grep comumente usadas descreveram abaixo.
Opção | Propósito |
---|---|
-Eu, -Ignore -case | É usado para correspondências insensíveis de casos dos padrões e arquivos. |
-EU | É usado para não corresponder ao padrão em arquivos binários. |
-profundidade máxima | É usado para cada um dado na linha de comando. O valor de profundidade de -1 indica nenhum limite. Esta opção é ignorada se contém curingas ativas. |
-r, -recursive | Funciona como -max-depth = -1, e é o valor padrão. |
-sem recursivo | Funciona como -Max -Depth = 0. |
-w, -word -regexp | É usado para corresponder ao padrão apenas na palavra limite. |
-V, -Invert -in -match | É usado para selecionar linhas não correspondentes. |
-nome completo | É usado para forçar os caminhos para a saída em relação ao diretório superior do projeto. |
-e | É usado para os padrões que começam - e devem ser usados com o grep. |
-e, -ou, -not, (…) | Essas opções são usadas para definir os múltiplos padrões para pesquisar. -ou é o operador padrão e -e tem maior precedência do que -ou. |
-E, -Extended -Regexp, -g, -Basic -Regexp | É usado para padrões de regexp estendidos/básicos do POSIX. |
-P, -perl -Regexp | É usado para padrões de expressão regular compatíveis com Perl. |
-F, -fixed -strings | É usado para os padrões de string fixa. |
-f | É usado para ler os padrões do arquivo. |
-n, -linha -número | É usado para prefixar o número da linha para corresponder linhas. |
-o, -apenas correspondência | É usado para imprimir apenas as partes correspondentes (não vazios) de uma linha correspondente. |
-C, -Count | É usado para mostrar o número de linhas que correspondem. |
-quebrar | É usado para imprimir uma linha vazia entre as correspondências dos diferentes arquivos. |
-ajuda | É usado para exibir todas as opções disponíveis com a descrição do comando Grep. |
Ativar configuração Grep:
Antes de executar o comando 'Git Grep' deste tutorial, execute o seguinte comando para ativar -Regexp estendido e -n Opções do comando Grep.
$ Git Config -Grep global.estendregexp true
$ Git Config -Grep global.Linho de linho verdadeiro
Uso do comando grep para pesquisa:
Um repositório local nomeado livraria foi usado neste tutorial para verificar a saída do comando Grep para pesquisar conteúdo no repositório. O repositório contém dois arquivos. Estes são lista de livros.php e Booktype.php.
Execute o seguinte comando para pesquisar a palavra 'Tipo de livro' nos arquivos do repositório.
$ Git Grep 'Tipo de livro' $ (Git Rev -List -Al)
A saída a seguir mostra que a palavra 'Tipo de livro' existe em linha 1 do Booktype.php arquivo.
Execute o seguinte comando para pesquisar as linhas dos arquivos do repositório com os valores de commit sha que contêm 'vaia' No início dos arquivos. Aqui, o -i A opção foi usada para pesquisa insensível ao caso.
$ git grep -i 'boo*' $ (git rev -list --l)
A saída a seguir mostra que 'vaia' contém dois arquivos na linha número 1, mas a entrada para o lista de livros.php O arquivo apareceu duas vezes para duas commits.
O padrão foi pesquisado dentro do conteúdo do arquivo de repositório nos comandos anteriores. Execute o seguinte comando para pesquisar o conteúdo de um arquivo específico.
$ git grep -f 'booktype.php.'
A saída a seguir mostra que O Booktype.php Existe um arquivo no repositório atual e o arquivo contém uma única linha.
Execute o seguinte comando para pesquisar o padrão, 'livro' dentro do conteúdo dos arquivos do repositório. Aqui, a opção -e usou para correspondência de padrões.
$ git grep -e 'livro'
A saída a seguir mostra que ambos lista de livros.php e Booktype.php Os arquivos contêm a palavra 'Livro' Na linha número 1.
Execute o seguinte comando para pesquisar vários padrões dentro do conteúdo dos arquivos do repositório. Aqui, a opção -e usou para a correspondência de padrões regex, e o tubo (|) está funcionando como lógico ou. Os arquivos que contêm a palavra 'Livro' ou 'autor' será mostrado após executar o seguinte comando.
$ git grep -e 'livro*| autor.'
A saída a seguir mostra que a palavra 'autor' existe duas vezes no Authorinfo.php arquivo e a palavra 'Livro' existe uma vez no lista de livros.php e Booktype.php arquivo.
Conclusão:
O 'Git Grep' é um comando útil para pesquisar o conteúdo específico no repositório Git. A pesquisa pode ser feita de maneiras diferentes usando as diferentes opções deste comando. Os usos de algumas opções foram descritos neste tutorial usando um repositório de demonstração.