Copilot mit Kontext steuern

Softwareentwicklung mit GitHub Copilot

Thalia Barrera

AI Engineering Curriculum Manager, DataCamp

Warum Kontext wichtig ist

Softwareentwicklung mit GitHub Copilot

Warum Kontext wichtig ist

Softwareentwicklung mit GitHub Copilot
Softwareentwicklung mit GitHub Copilot

Die Variable #codebase

$$

#codebase: Führt eine semantische Codesuche im gesamten Projekt aus

Beispiel-Prompt:

Wie wird die Benutzer-Authentifizierung gehandhabt? #codebase

Ergebnis:

  • 🔍 Durchsucht die gesamte Codebase
  • 💻 Bezieht relevante Logik, Funktionsaufrufe oder Configs in die Antwort ein
Softwareentwicklung mit GitHub Copilot

Wie Copilot deine Codebase versteht

Indextypen:

  • Lokaler Index: Auf deinem Rechner gespeichert
  • Remote-Index: Für Repos auf GitHub
Softwareentwicklung mit GitHub Copilot

Indextyp prüfen

Softwareentwicklung mit GitHub Copilot

Indextyp prüfen

Softwareentwicklung mit GitHub Copilot

Die Variable #changes

$$

#changes: Verweist auf die neuesten Versionskontroll-Änderungen

Beispiel-Prompt:

Bricht eine dieser Änderungen den Login-Flow? #changes

Verwenden, wenn:

  • 💾 Code-Änderungen bewerten
Softwareentwicklung mit GitHub Copilot

Die Variable #selection

$$

#selection: Verweist auf markierte Codeblöcke

Beispiel-Prompt:

Kannst du das refaktorisieren? #selection

Verwenden, wenn:

  • 🔧 Schnelle Edits
  • 📝 Zielgerichtete Prompts erstellen
Softwareentwicklung mit GitHub Copilot

Die Variable #fetch

  • Doku 📚, API-Referenz 💻, Blogpost 📰

$$

#fetch: Ruft den Inhalt einer Webseite ab

Beispiel-Prompt:

Fasse diese Doku zusammen #fetch https://example.com/docs

Ergebnis:

  • 🌐 Ruft eine Webseite ab und nutzt sie als Kontext
Softwareentwicklung mit GitHub Copilot

Die Variable #files

$$

#files: Hängt bestimmte Dateien an einen Prompt an

Beispiel-Prompt:

Kannst du diese Datei auf Fehlerbehandlung prüfen? #files:utils/data_loader.py

Ergebnis:

  • 🔍 Analysiert den Inhalt der referenzierten Datei
  • 📄 Nutzt sie als Teil des Prompt-Kontexts
Softwareentwicklung mit GitHub Copilot

Weitere Chat-Variablen und -Tools

$$

Variable/Tool Beschreibung
#search Sucht nach Dateien im aktuellen Workspace.
#testFailure Ruft Infos zu fehlgeschlagenen Unit-Tests ab. Nützlich beim Ausführen und Diagnostizieren von Tests.
#problems Fügt Probleme aus dem Problems-Panel als Kontext hinzu. Nützlich beim Fixen oder Debuggen.
#terminalLastCommand Holt den zuletzt ausgeführten Terminalbefehl samt Ausgabe.
#githubRepo Führt eine Codesuche in einem GitHub-Repo aus.
1 https://code.visualstudio.com/docs/copilot/reference/copilot-vscode-features#_chat-tools
Softwareentwicklung mit GitHub Copilot
Softwareentwicklung mit GitHub Copilot

Eine progressive Chat-Interaktion aufbauen

Ein einzelner, komplexer Prompt:

Füge PostgreSQL-Integration mit Authentifizierung, Persistenz, Sessions, Fehlerbehandlung und Connection-Pooling hinzu

Schrittweise steigern:

  1. Was ist der beste Ansatz für Datenbankpersistenz? #codebase
  2. Implementiere die DB-Verbindung nach dem vorgeschlagenen Ansatz
  3. Hilf mir beim Schema für Task- und User-Klassen
  4. Füge jetzt Session-Management und grundlegende Fehlerbehandlung hinzu
  5. ...
Softwareentwicklung mit GitHub Copilot

Neuen Chat starten, um Kontext zu leeren

Softwareentwicklung mit GitHub Copilot

Neuen Chat starten, um Kontext zu leeren

Softwareentwicklung mit GitHub Copilot

Softwareentwicklung mit GitHub Copilot

Lass uns üben!

Softwareentwicklung mit GitHub Copilot

Preparing Video For Download...