Guider Copilot avec le contexte

Développement logiciel avec GitHub Copilot

Thalia Barrera

AI Engineering Curriculum Manager, DataCamp

L'importance du contexte

Développement logiciel avec GitHub Copilot

L'importance du contexte

Développement logiciel avec GitHub Copilot
Développement logiciel avec GitHub Copilot

La variable #codebase

$$

#codebase : effectue une recherche sémantique dans tout le projet

Exemple d'invite :

How is user authentication handled? #codebase

Résultat :

  • 🔍 Parcourt toute la base de code
  • 💻 Inclut la logique, les appels de fonctions ou les paramètres de config pertinents dans sa réponse
Développement logiciel avec GitHub Copilot

Comment Copilot comprend votre base de code

Types d'index :

  • Index local : Stocké sur votre machine
  • Index distant : Pour les dépôts hébergés sur GitHub
Développement logiciel avec GitHub Copilot

Vérifier votre type d'index

Développement logiciel avec GitHub Copilot

Vérifier votre type d'index

Développement logiciel avec GitHub Copilot

La variable #changes

$$

#changes : référence les plus récents changements du contrôle de source

Exemple d'invite :

Will any of these changes break the login flow? #changes

À utiliser pour :

  • 💾 Évaluer des modifications de code
Développement logiciel avec GitHub Copilot

La variable #selection

$$

#selection : référence les blocs de code surlignés

Exemple d'invite :

Can you refactor this? #selection

À utiliser pour :

  • 🔧 Faire des modifications rapides
  • 📝 Créer des invites ciblées
Développement logiciel avec GitHub Copilot

La variable #fetch

  • Documentation 📚, référence d'API 💻, billet de blogue 📰

$$

#fetch : récupère le contenu d'une page Web

Exemple d'invite :

Summarize this documentation for me #fetch https://example.com/docs

Résultat :

  • 🌐 Récupère une page Web et l'utilise comme contexte
Développement logiciel avec GitHub Copilot

La variable #files

$$

#files : joint des fichiers précis à une invite

Exemple d'invite :

Can you check this file for error handling issues? #files:utils/data_loader.py

Résultat :

  • 🔍 Analyse le contenu du fichier référencé
  • 📄 L'intègre au contexte de l'invite
Développement logiciel avec GitHub Copilot

Autres variables et outils de clavardage

$$

Variable/outil Description
#search Permet de chercher des fichiers dans l'espace de travail actuel.
#testFailure Obtenir des renseignements sur les échecs de tests unitaires. Utile pour exécuter et diagnostiquer des tests.
#problems Ajouter des enjeux et problèmes de l'espace de travail depuis le panneau Problems comme contexte. Utile pour corriger du code ou déboguer.
#terminalLastCommand Obtenir la dernière commande du terminal exécutée et sa sortie.
#githubRepo Effectuer une recherche de code dans un dépôt GitHub.
1 https://code.visualstudio.com/docs/copilot/reference/copilot-vscode-features#_chat-tools
Développement logiciel avec GitHub Copilot
Développement logiciel avec GitHub Copilot

Créer une interaction de clavardage progressive

Invite unique et complexe :

Add PostgreSQL integration with authentication, persistence, sessions, error handling, and connection pooling

Progression par complexité :

  1. What's the best approach for adding database persistence? #codebase
  2. Implement the database connection using the suggested approach
  3. Help me with the schema design for the Task and the User classes
  4. Now add session management and basic error handling
  5. ...
Développement logiciel avec GitHub Copilot

Démarrer un nouveau clavardage pour réinitialiser le contexte

Développement logiciel avec GitHub Copilot

Démarrer un nouveau clavardage pour réinitialiser le contexte

Développement logiciel avec GitHub Copilot

Développement logiciel avec GitHub Copilot

Passons à la pratique !

Développement logiciel avec GitHub Copilot

Preparing Video For Download...