Ghidarea Copilot cu context

Dezvoltare software cu GitHub Copilot

Thalia Barrera

AI Engineering Curriculum Manager, DataCamp

Importanța contextului

Dezvoltare software cu GitHub Copilot

Importanța contextului

Dezvoltare software cu GitHub Copilot
Dezvoltare software cu GitHub Copilot

Variabila #codebase

$$

#codebase: Efectuează o căutare semantică de cod în întregul proiect

Exemplu de prompt:

Cum este gestionată autentificarea utilizatorilor? #codebase

Rezultat:

  • 🔍 Scanează întreaga bază de cod
  • 💻 Include logică relevantă, apeluri de funcții sau setări de configurare în răspuns
Dezvoltare software cu GitHub Copilot

Cum înțelege Copilot baza de cod

Tipuri de index:

  • Index local: Stocat pe mașina dvs.
  • Index remote: Pentru depozite găzduite pe GitHub
Dezvoltare software cu GitHub Copilot

Verificarea tipului de index

Dezvoltare software cu GitHub Copilot

Verificarea tipului de index

Dezvoltare software cu GitHub Copilot

Variabila #changes

$$

#changes: Referențiază cele mai recente modificări din controlul sursei

Exemplu de prompt:

Vor afecta aceste modificări fluxul de autentificare? #changes

Utilizați când:

  • 💾 Evaluați modificări de cod
Dezvoltare software cu GitHub Copilot

Variabila #selection

$$

#selection: Referențiază blocurile de cod selectate

Exemplu de prompt:

Poți refactoriza aceasta? #selection

Utilizați când:

  • 🔧 Efectuați editări rapide
  • 📝 Creați prompturi țintite
Dezvoltare software cu GitHub Copilot

Variabila #fetch

  • Documentație 📚, referință API 💻, articol de blog 📰

$$

#fetch: Preia conținutul unei pagini web

Exemplu de prompt:

Rezumă această documentație #fetch https://example.com/docs

Rezultat:

  • 🌐 Preia o pagină web și o folosește drept context
Dezvoltare software cu GitHub Copilot

Variabila #files

$$

#files: Atașează fișiere specifice unui prompt

Exemplu de prompt:

Poți verifica acest fișier pentru probleme de gestionare a erorilor? #files:utils/data_loader.py

Rezultat:

  • 🔍 Analizează conținutul fișierului referențiat
  • 📄 Îl include ca parte a contextului promptului
Dezvoltare software cu GitHub Copilot

Alte variabile și instrumente de chat

$$

Variable/tool Description
#search Activează căutarea fișierelor în spațiul de lucru curent.
#testFailure Obține informații despre eșecurile testelor unitare. Util la rularea și diagnosticarea testelor.
#problems Adaugă ca și context problemele din panoul Problems. Util la remedierea sau depanarea codului.
#terminalLastCommand Obține ultima comandă din terminal și rezultatul său.
#githubRepo Efectuează o căutare de cod într-un depozit GitHub.
1 https://code.visualstudio.com/docs/copilot/reference/copilot-vscode-features#_chat-tools
Dezvoltare software cu GitHub Copilot
Dezvoltare software cu GitHub Copilot

Construirea unei interacțiuni de chat progresive

Prompt unic și complex:

Adaugă integrare PostgreSQL cu autentificare, persistență, sesiuni, gestionarea erorilor și connection pooling

Flux cu complexitate progresivă:

  1. Care este cea mai bună abordare pentru adăugarea persistenței bazei de date? #codebase
  2. Implementează conexiunea la baza de date folosind abordarea sugerată
  3. Ajută-mă cu designul schemei pentru clasele Task și User
  4. Acum adaugă gestionarea sesiunilor și tratarea de bază a erorilor
  5. ...
Dezvoltare software cu GitHub Copilot

Pornirea unui chat nou pentru ștergerea contextului

Dezvoltare software cu GitHub Copilot

Pornirea unui chat nou pentru ștergerea contextului

Dezvoltare software cu GitHub Copilot

Dezvoltare software cu GitHub Copilot

Să exersăm!

Dezvoltare software cu GitHub Copilot

Preparing Video For Download...