Skip to main content

Recherche de code (hérité)

Vous devez uniquement utiliser la syntaxe de recherche de code hĂ©ritĂ© si vous utilisez l’API de recherche de code.

Remarque

Cet article dĂ©crit la syntaxe de la recherche de code hĂ©ritĂ©, que vous devez utiliser uniquement pour le point de terminaison de l’API REST pour la recherche de code.

Pour plus d’informations sur la syntaxe de la recherche de code que vous pouvez utiliser sur GitHub, consultez PrĂ©sentation de la syntaxe de GitHub Code Search.

Vous pouvez effectuer une recherche globale sur l'ensemble des GitHub ou restreindre votre recherche Ă  un rĂ©fĂ©rentiel ou une organisation en particulier. Pour plus d’informations, consultez À propos de la recherche sur GitHub.

Seuls les qualificateurs suivants peuvent ĂȘtre utilisĂ©s pour rechercher du code. Les qualificateurs de recherche spĂ©cifiques aux rĂ©fĂ©rentiels, aux utilisateurs ou aux commits ne fonctionnent pas pour la recherche de code.

Conseil

  • Cet article contient des liens vers des exemples de recherche sur le site web GitHub.com, mais vous pouvez utiliser les mĂȘmes filtres de recherche sur n'importe quelle plateforme GitHub. Dans les exemples de recherche liĂ©s, remplacez github.com par le nom d’hĂŽte de votre plateforme GitHub.
  • Pour obtenir la liste des syntaxes de recherche que vous pouvez ajouter Ă  n’importe quel qualificateur de recherche afin d’amĂ©liorer vos rĂ©sultats, consultez ComprĂ©hension de la syntaxe de recherche.
  • Utilisez des guillemets autour des termes de recherche composĂ©s de plusieurs mots. Par exemple, pour rechercher les problĂšmes qui ont l’étiquette « In progress Â», vous devez rechercher label:"in progress". La recherche ne respecte pas la casse.

Compte tenu de la complexitĂ© de la recherche de code, des restrictions s’appliquent au mode de recherche :

  • Vous devez ĂȘtre connectĂ© Ă  un compte personnel sur GitHub pour rechercher du code dans tous les dĂ©pĂŽts publics.
  • Le code dans les duplications (forks) n'est consultable que si la duplication a plus d'Ă©toiles que le rĂ©fĂ©rentiel parent, et que le rĂ©fĂ©rentiel dupliquĂ© a au moins un commit envoyĂ© aprĂšs avoir Ă©tĂ© créé. Les duplications avec moins d'Ă©toiles que le rĂ©fĂ©rentiel parent ou sans commits ne sont pas indexĂ©es pour la recherche de code. Pour inclure les duplications ayant plus d'Ă©toiles que leur parent et au moins un commit envoyĂ© dans les rĂ©sultats de la recherche, vous devrez ajouter fork:true ou fork:only Ă  votre requĂȘte. Pour plus d’informations, consultez « Recherche dans les duplications Â».
  • Seule la branche par dĂ©faut est indexĂ©e pour la recherche de code.
  • Seuls les fichiers infĂ©rieurs Ă  384 Ko peuvent faire l’objet d’une recherche.
  • Jusqu’à 4 000 rĂ©fĂ©rentiels privĂ©s peuvent faire l’objet d’une recherche. Ces 4 000 rĂ©fĂ©rentiels seront les plus rĂ©cemment mis Ă  jour parmi les 10 000 premiers rĂ©fĂ©rentiels privĂ©s auxquels vous avez accĂšs.
  • Seuls les rĂ©fĂ©rentiels contenant moins de 500 000 fichiers peuvent faire l’objet d’une recherche.
  • Seuls les rĂ©fĂ©rentiels qui ont eu une activitĂ© ou qui sont apparus dans des rĂ©sultats de recherche au cours de l’annĂ©e Ă©coulĂ©e peuvent faire l’objet d’une recherche.
  • À l’exception des recherches par filename, vous devez toujours inclure au moins un terme lorsque vous recherchez du code source. Par exemple, la recherche de language:javascript n’est pas valide alors que celle de amazing language:javascript l’est.
  • Les rĂ©sultats de la recherche peuvent tout au plus afficher deux fragments du mĂȘme fichier, mais il peut y avoir plus de rĂ©sultats dans le fichier.
  • Vous ne pouvez pas utiliser les caractĂšres gĂ©nĂ©riques suivants dans le cadre de votre requĂȘte de recherche : . , : ; / \ ` ' " = * ! ? # $ & + ^ | ~ < > ( ) { } [ ] @. La recherche ignorera ces symboles.

Recherche par contenu du fichier ou par chemin d’accùs au fichier

Le qualificateur in vous permet de restreindre votre recherche au contenu du fichier de code source, au chemin d’accùs au fichier ou aux deux. Lorsque vous omettez ce qualificateur, la recherche porte uniquement sur le contenu du fichier.

QualificateurExemple
in:fileoctocat in:file permet de rechercher du code oĂč « octocat Â» apparaĂźt dans le contenu du fichier.
in:pathoctocat in:path permet de rechercher du code oĂč « octocat Â» apparaĂźt dans le chemin d’accĂšs au fichier.
in:file,pathoctocat in:file,path permet de rechercher du code oĂč « octocat Â» apparaĂźt dans le contenu du fichier ou dans le chemin d’accĂšs au fichier.

Recherche dans les rĂ©fĂ©rentiels d’un utilisateur ou d’une organisation

Pour rechercher du code contenu dans tous les référentiels appartenant à un utilisateur ou à une organisation, vous pouvez utiliser le qualificateur user ou org. Pour rechercher du code contenu dans un référentiel spécifique, vous pouvez utiliser le qualificateur repo.

QualificateurExemple
user:USERNAMEuser:defunkt extension:rb permet de rechercher du code de @defunkt qui se termine par .rb.
org:ORGNAMEorg:github extension:js permet de rechercher du code de GitHub qui se termine par .js.
repo:USERNAME/REPOSITORYrepo:mozilla/shumway extension:as permet de rechercher du code du projet shumway de @mozilla qui se termine par .as.

Recherche par emplacement de fichier

Vous pouvez utiliser le qualificateur path pour rechercher du code source qui apparaĂźt Ă  un emplacement spĂ©cifique dans un rĂ©fĂ©rentiel. Utilisez path:/ pour rechercher des fichiers situĂ©s au niveau racine d’un rĂ©fĂ©rentiel. Vous pouvez Ă©galement spĂ©cifier un nom de rĂ©pertoire ou le chemin d’accĂšs Ă  un rĂ©pertoire pour rechercher des fichiers situĂ©s dans ce rĂ©pertoire ou dans l’un de ses sous-rĂ©pertoires.

QualificateurExemple
path:/octocat filename:readme path:/ permet de rechercher des fichiers readme comportant le mot « octocat Â» et situĂ©s au niveau racine d’un rĂ©fĂ©rentiel.
path:DIRECTORYform path:cgi-bin language:perl permet de rechercher des fichiers Perl comportant le mot « form Â» et situĂ©s dans le rĂ©pertoire cgi-bin, ou dans l’un de ses sous-rĂ©pertoires.
path:PATH/TO/DIRECTORY console path:app/public language:javascript permet de rechercher des fichiers JavaScript comportant le mot « console Â» et situĂ©s dans le rĂ©pertoire app/public, ou dans l’un de ses sous-rĂ©pertoires (mĂȘme s’ils rĂ©sident dans app/public/js/form-validators).

Recherche par langage

Vous pouvez rechercher du code en fonction du langage dans lequel il est Ă©crit. Le qualificateur language peut ĂȘtre le nom ou l’alias du langage. Pour obtenir la liste complĂšte des langages pris en charge, avec leurs noms et alias, consultez le dĂ©pĂŽt github-linguist/linguist.

QualificateurExemple
language:LANGUAGEelement language:xml size:100 permet de rechercher du code contenant le mot « element Â», marquĂ© comme XML et comportant exactement 100 octets.
language:LANGUAGEdisplay language:scss permet de rechercher du code contenant le mot « display Â» et marquĂ© comme SCSS.
language:LANGUAGEorg:mozilla language:markdown permet de rechercher du code de tous les référentiels de @mozilla qui est marqué comme Markdown.

Recherche par taille de fichier

Vous pouvez utiliser le qualificateur size pour rechercher du code source en fonction de la taille du fichier dans lequel ce code existe. Le qualificateur size utilise les qualificateurs supérieur à, inférieur à et de plage pour filtrer les résultats en fonction de la taille en octets du fichier dans lequel se trouve le code.

QualificateurExemple
size:nfunction size:>10000 language:python permet de rechercher du code contenant le mot « function Â», Ă©crit en Python, dans des fichiers de plus de 10 Ko.

Recherche par nom de fichier

Le qualificateur filename permet de rechercher des fichiers de code qui portent un certain nom. Vous pouvez Ă©galement rechercher un fichier dans un rĂ©fĂ©rentiel Ă  l’aide de la fonctionnalitĂ© de recherche de fichiers. Pour plus d’informations, consultez « Recherche de fichiers sur GitHub Â».

QualificateurExemple
filename:FILENAMEfilename:linguist permet de rechercher les fichiers nommĂ©s « linguist Â».
filename:FILENAMEfilename:.vimrc commands permet de rechercher les fichiers .vimrc contenant le mot « commands Â».
filename:FILENAMEfilename:test_helper path:test language:ruby permet de rechercher les fichiers Ruby nommés test_helper dans le répertoire test.

Recherche par extension de fichier

Le qualificateur extension permet de rechercher les fichiers de code dotĂ©s d’une extension de fichier spĂ©cifique.

QualificateurExemple
extension:EXTENSIONform path:cgi-bin extension:pm permet de rechercher du code contenant le mot « form Â», situĂ© sous cgi-bin et portant l’extension de fichier .pm.
extension:EXTENSIONicon size:>200000 extension:css permet de rechercher des fichiers de plus de 200 Ko qui se terminent par .css et qui comportent le mot « icon Â».

Pour aller plus loin