Skip to main content

Qualité du code GitHub

GitHub Code Quality détecte les problèmes de qualité avant la fusion, propose directement dans le code des correctifs en un clic alimentés par Copilot, et vérifie la couverture du code.

Qui peut utiliser cette fonctionnalité ?

GitHub Team ou GitHub Enterprise Cloud

GitHub Code Quality analyse votre code afin de détecter les problèmes de qualité et de couverture, et propose des correctifs basés sur Copilot que vous pouvez appliquer en un clic. Il s’exécute à deux endroits :

  • Dans les pull requests, Code Quality utilise des règles déterministes CodeQL pour détecter des anti-patterns connus et publie ses constatations sous forme de commentaires en ligne avant que le code ne soit fusionné. Si vous téléchargez un rapport XML de couverture Cobertura, les métriques de couverture des lignes indiquent si une modification maintient ou réduit la couverture. Vous pouvez imposer des seuils de qualité et de couverture à l’aide de jeux de règles afin de bloquer les demandes de fusion qui ne répondent pas à vos critères, et ainsi éviter l’accumulation d’une nouvelle dette de qualité.
  • Sur la branche par défaut, les analyses basées sur des règles identifient la dette de qualité déjà présente dans votre base de code, avec des corrections automatiques que vous pouvez appliquer directement ou attribuer à Copilot cloud agent pour qu’il la résolve à votre place. L’analyse basée sur l’IA s’exécute également sur des fichiers récemment modifiés, signalant les problèmes qui se trouvent en dehors des ensembles de règles existants, y compris les langages non encore couverts par CodeQL les requêtes.

Remarque

Sur les pull requests, Code Quality publie uniquement des résultats basés sur des règles CodeQL. Si vous souhaitez également des revues de vos pull requests assistées par l’IA, vous pouvez activer GitHub Copilot code review séparément. Consultez « À propos de la révision de code avec GitHub Copilot ».

Cas d’utilisation

Voici à quoi GitHub Code Quality ressemble dans la pratique.

Pour les développeurs et les équipes :

  • Un développeur ouvre une pull request qui introduit un problème de fiabilité ou de maintenabilité. Code Quality publie un commentaire expliquant le problème et propose un correctif en un clic avant la fusion du code. Le développeur voit également un rapport sur les métriques de couverture des lignes et peut voir en un clin d’œil si la pull request améliore ou réduit la couverture par rapport à la branche par défaut.
  • Une équipe hérite d’une grande base de code avec des années de dette de qualité cumulée. Code Quality analyse la branche par défaut, affiche les résultats avec des correctifs automatiques dans un tableau de bord, et l’équipe assigne le travail de remédiation à Copilot cloud agent pour ouvrir automatiquement des pull requests de correction.
  • Une équipe adopte des assistants de codage IA et a besoin d’assurance que le code généré répond à la même barre que le code écrit manuellement. L’analyse alimentée par l’IA détecte les problèmes dans les fichiers récemment modifiés que les requêtes basées sur des règles n’ont pas été conçues pour détecter, tandis que les règles CodeQL couvrent les antipatterns bien définis.

Pour les administrateurs et les prospects :

  • Un responsable technique définit des seuils de couverture et de qualité à l’aide de jeux de règles. Les pull requests qui ne répondent pas aux critères sont empêchées d’être fusionnées, de sorte qu’aucune nouvelle dette de qualité ou de couverture ne s’accumule.
  • Un administrateur a besoin d’une visibilité sur les référentiels pour les audits ou les rapports de conformité. Code Quality signale via la vue d’ensemble de la sécurité en même temps que les outils de sécurité, afin qu’ils puissent voir la posture de qualité actuelle au sein de l’organisation, examiner la façon dont les résultats ouverts ont changé au fil du temps et identifier les dépôts qui ont besoin d’attention. Consultez « Exploration des résultats de la qualité du code GitHub dans votre organisation ».

Disponibilité et facturation

Les coûts d’utilisation sont déterminés par :

  • Frais de licence par utilisateur calculés en fonction du nombre de contributeurs actifs.
  •           Corrections automatiques alimentées par Copilot pour les résultats dans les demandes de tirage et sur la branche par défaut, ainsi que des détections basées sur l’IA sur le code fusionné récemment, qui consomment GitHub AI Credits (aucune licence Copilot requise).
    
  • GitHub Actions minutes pour les analyses déterministes CodeQL , si vous n’utilisez pas d’exécuteurs auto-hébergés.

Les fonctionnalités facultatives, telles que la délégation du travail de remédiation de la qualité du code à Copilot, nécessitent une licence Copilot.

Pour plus d’informations, consultez « GitHub Code Quality Facturation ».

Langues prises en charge

Code Quality effectue une analyse basée sur des règles des langues suivantes à l'aide de CodeQL :

  • C#
  • Go
  • Java
  • JavaScript
  • Python
  • Ruby
  • TypeScript

Code Quality effectue également une analyse basée sur l’IA sur le code récemment modifié de votre dépôt, y compris les langages au-delà de ceux pris en charge par les requêtes basées sur des règles.

Étapes suivantes