Skip to main content

À propos de GitHub Code Search

Vous pouvez rechercher, naviguer et comprendre le code dans GitHub avec la recherche de code.

À propos de la recherche de code GitHub

La recherche de code GitHub vous permet de rechercher du code, de naviguer parmi celui-ci et de comprendre son contenu, qu’il s’agisse de votre propre code, du code de votre équipe ou du code de la communauté open source. Ce moteur de recherche est conçu pour être évolutif, sensible au code et capable de prendre en charge le code dans GitHub à l’aide d’expressions régulières, d’opérations booléennes, de qualificateurs spécialisés et de la recherche de symboles. Pour plus d’informations sur la syntaxe de la recherche de code, consultez « Présentation de la syntaxe de GitHub Code Search ».

La recherche par code est intégrée aux caractéristiques de l'interface de recherche sur GitHub, telles que les suggestions et les compléments. Vos recherches seront enregistrées automatiquement et peuvent être supprimées à tout moment. Sur GitHub Mobile, vous pouvez utiliser les mêmes méthodes pour rechercher du code directement depuis l'écran d'accueil. Pour plus d’informations, consultez « Utilisation de GitHub Code Search ».

Vous devez être connecté à un compte GitHub pour utiliser la recherche de code, y compris dans les dépôts publics.

Notez que la syntaxe et les qualificateurs pour rechercher du contenu autre que du code, comme les problèmes, les utilisateurs et les discussions, est différente de la syntaxe pour rechercher du code. Pour plus d’informations sur la recherche sans code, consultez « À propos de la recherche sur GitHub » et « Recherche sur GitHub ».

Navigation dans le code

La recherche de code GitHub fournit une navigation de code pour les langages pris en charge. Cela inclut le saut à la définition et la recherche de références pour les constructions de langage de programmation, comme les classes, les structs, les fonctions et les méthodes. Consultez « Navigation dans le code sur GitHub ».

Les langages pris en charge pour la navigation dans le code sont les suivants :

  • Bash
  • C
  • C#
  • C++
  • CodeQL
  • Elixir
  • Go
  • JSX
  • Java
  • JavaScript
  • Lua
  • PHP
  • Mémoires tampon de protocole
  • Python
  • R
  • Ruby
  • Rust
  • Scala
  • Starlark
  • Swift
  • Typescript

Limites

Nous avons indexé de nombreux référentiels publics pour la recherche de code et nous continuons à en indexer d’autres. En outre, les dépôts privés des utilisateurs de GitHub sont indexés et consultables par ceux qui ont déjà accès à ces dépôts privés sur GitHub. Toutefois, les très grands dépôts ne sont peut-être pas indexés pour le moment, et la totalité du code n’est pas indexée.

Les limitations actuelles du code indexé sont les suivantes :

  • Le code vendu et généré est exclu
  • Les fichiers vides et les fichiers de plus de 350 Kio sont exclus
  • Les lignes de plus de 1 024 caractères sont tronquées
  • Les fichiers binaires (PDF, etc.) sont exclus
  • Seuls les fichiers dont le codage correspond au format UTF-8 sont inclus
  • Les très grands dépôts ne peuvent pas être indexés
  • La recherche exhaustive n’est pas possible
  • Les fichiers contenant une ligne de plus de 4 096 octets sont exclus

Nous prenons en charge uniquement la recherche de code dans la branche par défaut d’un dépôt. La longueur des requêtes est limitée à 1 000 caractères.

Les résultats des recherches effectuées avec la recherche de code sont limités à 100 résultats (5 pages). Le tri des résultats de la recherche de code n’est pas pris en charge. Cette limitation s’applique uniquement à la recherche de code basée sur la nouvelle recherche de code. Elle ne s’applique pas aux autres types de recherche.

Si vous utilisez le path: qualificateur pour un fichier qui se trouve dans plusieurs référentiels avec du contenu similaire, GitHub n’affichent que quelques-uns de ces fichiers. Si cela se produit, vous pouvez choisir de développer en cliquant sur Afficher les fichiers identiques en bas de la page.

La recherche de code prend en charge la recherche de définitions de symboles dans le code, par exemple les définitions de fonctions ou de classes, à l’aide du qualificateur symbol:. Toutefois, notez que le qualificateur symbol: recherche uniquement les définitions et non les références. De plus, tous les types de symbole et tous les langages ne sont pas encore complètement pris en charge. Pour obtenir la liste des langages pris en charge, consultez « Présentation de la syntaxe de GitHub Code Search ».

Sur GitHub Mobile, vous pouvez utiliser la recherche de code directement depuis l'écran d'accueil. Pour plus d’informations, consultez « Utilisation de GitHub Code Search ».

Commentaires et support

Vous pouvez afficher et partager des commentaires sur la recherche de code dans notre forum de discussion.