Skip to main content

Pesquisar o código (legacy)

Você só precisará usar a sintaxe de pesquisa de código herdada se estiver usando a API de pesquisa de código.

Observação: este artigo aborda a sintaxe da pesquisa de código herdada, que você só deve usar no ponto de extremidade da API REST para pesquisar código.

Para obter informações sobre a sintaxe de pesquisa de código que você pode usar no GitHub, confira "Entender a sintaxe de pesquisa de código do GitHub".

Você pode pesquisar globalmente em todo o GitHub ou definir o escopo da sua pesquisa para uma organização ou um repositório específico. Para obter mais informações, confira "Sobre a pesquisa no GitHub".

Você pode pesquisar códigos usando somente estes qualificadores de pesquisa de código. Qualificadores de pesquisa específicos para repositórios, usuários ou commits não funcionarão com a pesquisa de códigos.

Dicas:

  • Para ver uma lista de sintaxes de pesquisa que você pode adicionar a qualquer qualificador de pesquisa para aprimorar ainda mais os resultados, confira "Noções básicas de sintaxe de pesquisa".
  • Use aspas em termos de pesquisa com várias palavras. Por exemplo, caso deseje pesquisar problemas com o rótulo "Em andamento", pesquise label:"in progress". A pesquisa não faz distinção entre maiúsculas e minúsculas.

Devido à complexidade da pesquisa de códigos, a execução das pesquisas apresenta algumas restrições:

  • Você deve estar conectado a uma conta pessoal no GitHub para pesquisar o código em todos os repositórios públicos.
  • O código em forks só é pesquisável se o fork tiver mais estrelas do que o repositório pai e o repositório com fork tiver pelo menos uma commit enviada por push após ser criada. Os forks com menos estrelas do que o repositório pai ou sem commits não são indexados para pesquisa de código. Para incluir forks com mais estrelas do que os respectivos pais e pelo menos uma commit enviada por push nos resultados da busca, adicione fork:true ou fork:only à consulta. Para obter mais informações, confira "Pesquisar em bifurcações".
  • Somente o branch padrão é indexado para pesquisa de código.
  • Somente arquivos com menos de 384 KB são pesquisados.
  • Até 4 mil repositórios privados são pesquisáveis. Esses 4 mil repositórios serão os mais recentemente atualizados dos primeiros 10 mil repositórios privados aos quais você tem acesso.
  • Somente os repositórios com menos de 500 mil arquivos são pesquisáveis.
  • Apenas repositórios que tiveram atividade ou apareceram nos resultados de pesquisa do último ano são pesquisáveis.
  • Exceto em pesquisas filename, você sempre precisa incluir, pelo menos, um termo de pesquisa ao pesquisar o código-fonte. Por exemplo, a pesquisa de language:javascript não é válida, ao contrário de amazing language:javascript.
  • Os resultados da pesquisa exibem no máximo dois fragmentos do mesmo arquivo, mas o arquivo pode ter mais resultados.
  • Não é possível usar os seguintes caracteres curinga como parte da consulta de pesquisa: . , : ; / \ ` ' " = * ! ? # $ & + ^ | ~ < > ( ) { } [ ] @. A pesquisa simplesmente ignora esses símbolos.

Pesquisar pelo conteúdo ou caminho do arquivo

Com o qualificador in, você pode restringir a pesquisa ao conteúdo do arquivo de código-fonte, ao caminho do arquivo ou a ambos. Quando você omite esse qualificador, somente o conteúdo do arquivo é pesquisado.

QualificadorExemplo
in:fileoctocat in:file corresponde ao código em que "octocat" aparece no conteúdo do arquivo.
in:pathoctocat in:path corresponde ao código em que "octocat" aparece no caminho do arquivo.
in:file,pathoctocat in:file,path corresponde ao código em que "octocat" aparece no conteúdo ou no caminho do arquivo.

Pesquisar nos repositórios de um usuário ou uma organização

Para pesquisar o código em todos os repositórios pertencentes a uma organização ou a um usuário específico, use o qualificador user ou org. Para pesquisar o código em um repositório específico, use o qualificador repo.

QualificadorExemplo
user:USERNAMEuser:defunkt extension:rb corresponde ao código de @defunkt que termina com .rb.
org:ORGNAMEorg:github extension:js corresponde ao código do GitHub que termina com .js.
repo:USERNAME/REPOSITORYrepo:mozilla/shumway extension:as corresponde ao código do projeto shumway de @mozilla que termina com .as.

Pesquisar por local do arquivo

Use o qualificador path para pesquisar o código-fonte que aparece em um local específico em um repositório. Use path:/ para pesquisar os arquivos localizados no nível raiz de um repositório. Ou especifique o nome ou o caminho do diretório para pesquisar os arquivos presentes nesse diretório e em seus subdiretórios.

QualificadorExemplo
path:/octocat filename:readme path:/ corresponde aos arquivos leiame com a palavra "octocat" localizada no nível raiz de um repositório.
path:DIRECTORYform path:cgi-bin language:perl corresponde aos arquivos Perl com a palavra "form" no diretório cgi-bin ou em um dos subdiretórios.
path:PATH/TO/DIRECTORY console path:app/public language:javascript corresponde aos arquivos JavaScript com a palavra "console" no diretório app/public ou em um dos subdiretórios (mesmo que eles estejam em app/public/js/form-validators).

Pesquisar por linguagem

Você pode pesquisar código com base na linguagem na qual ele foi escrito. O qualificador language pode ser o nome da linguagem ou o alias. Para ver a lista completa das linguagens com suporte acompanhadas dos respectivos nomes e aliases, confira o repositório github-linguist/linguist.

QualificadorExemplo
language:LANGUAGEelement language:xml size:100 corresponde ao código com a palavra "element" que está marcado como sendo XML e tem exatamente 100 bytes.
language:LANGUAGEdisplay language:scss corresponde ao código com a palavra "display" que está marcado como SCSS.
language:LANGUAGEorg:mozilla language:markdown corresponde ao código de todos os repositórios de @mozilla marcados como Markdown.

Pesquisar por tamanho do arquivo

Use o qualificador size para pesquisar o código-fonte com base no tamanho do arquivo em que o código está. O qualificador size usa os qualificadores maior que, menor que e intervalo para filtrar os resultados com base no tamanho do byte do arquivo no qual o código é encontrado.

QualificadorExemplo
size:nfunction size:>10000 language:python corresponde ao código com a palavra "function", escrito em Python, em arquivos com mais de 10 KB.

Pesquisar por nome do arquivo

O qualificador filename corresponde aos arquivos de código com determinado nome de arquivo. Você também pode localizar um arquivo em um repositório usando o localizador de arquivos. Para obter mais informações, confira "Localizar arquivos no GitHub".

QualificadorExemplo
filename:FILENAMEfilename:linguist corresponde aos arquivos chamados "linguist".
filename:FILENAMEfilename:.vimrc commands corresponde aos arquivos .vimrc com a palavra "commands".
filename:FILENAMEfilename:test_helper path:test language:ruby corresponde aos arquivos Ruby chamados test_helper do diretório test.

Pesquisar por extensão do arquivo

O qualificador extension corresponde aos arquivos de código com determinada extensão de arquivo.

QualificadorExemplo
extension:EXTENSIONform path:cgi-bin extension:pm corresponde ao código com a palavra "form", em cgi-bin, com a extensão de arquivo .pm.
extension:EXTENSIONicon size:>200000 extension:css corresponde aos arquivos com mais de 200 KB que terminam com .css e têm a palavra "icon".

Leitura adicional