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.
Considérations relatives à la recherche de code
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
oufork: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 delanguage:javascript
nâest pas valide alors que celle deamazing 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.
Qualificateur | Exemple |
---|---|
in:file | octocat in:file permet de rechercher du code oĂč « octocat » apparaĂźt dans le contenu du fichier. |
in:path | octocat in:path permet de rechercher du code oĂč « octocat » apparaĂźt dans le chemin dâaccĂšs au fichier. |
in:file,path | octocat 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
.
Qualificateur | Exemple |
---|---|
user:USERNAME | user:defunkt extension:rb permet de rechercher du code de @defunkt qui se termine par .rb. |
org:ORGNAME | org:github extension:js permet de rechercher du code de GitHub qui se termine par .js. |
repo:USERNAME/REPOSITORY | repo: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.
Qualificateur | Exemple |
---|---|
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:DIRECTORY | form 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.
Qualificateur | Exemple |
---|---|
language:LANGUAGE | element language:xml size:100 permet de rechercher du code contenant le mot « element », marqué comme XML et comportant exactement 100 octets. |
language:LANGUAGE | display language:scss permet de rechercher du code contenant le mot « display » et marqué comme SCSS. |
language:LANGUAGE | org: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.
Qualificateur | Exemple |
---|---|
size:n | function 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 ».
Qualificateur | Exemple |
---|---|
filename:FILENAME | filename:linguist permet de rechercher les fichiers nommés « linguist ». |
filename:FILENAME | filename:.vimrc commands permet de rechercher les fichiers .vimrc contenant le mot « commands ». |
filename:FILENAME | filename: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.
Qualificateur | Exemple |
---|---|
extension:EXTENSION | form 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:EXTENSION | icon 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 ». |