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 :

  • Sur les demandes de tirage, Code Quality utilise des règles déterministes CodeQL pour détecter les anti-modèles connus et publier les résultats sous forme de commentaires inline avant la fusion du code. Si vous téléversez un rapport de couverture Cobertura au format XML, les indicateurs de couverture montrent si une modification maintient ou réduit le niveau de 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é existante dans votre base de code, avec des corrections automatiques que vous pouvez appliquer directement ou affecter pour Agent cloud Copilot résoudre votre compte. 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 demandes de tirage, Code Quality publie uniquement les résultats basés sur CodeQL des règles. Si vous souhaitez également des révisions basées sur l’IA de vos demandes de tirage, vous pouvez l’activer GitHub Copilot révision du code 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 et peut indiquer en un clin d’œil si la demande de tirage 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 à Agent cloud Copilot 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 basée sur l’IA intercepte les problèmes dans les fichiers récemment modifiés pour utilisant des requêtes basées sur des règles qui n’ont pas été écrites, tandis que CodeQL les règles couvrent les anti-modèles 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 affiche des rapports dans la vue d’ensemble de la sécurité, aux côtés des outils de sécurité, afin qu’ils puissent voir le niveau de qualité dans l’ensemble de l’organisation en un clin d’œil, identifier les dépôts qui nécessitent une attention particulière et suivre les indicateurs d’amélioration à l’aide des contrôles et stratégies d’audit standard GitHub.

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.
  • Copilot- Corrections automatiques optimisées pour les résultats dans les demandes de tirage et sur la branche par défaut, ainsi que les détections basées sur l’IA sur le code récemment fusionné, qui consomment GitHub AI Credits (aucune Copilot licence 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