Skip to main content
Skip to content

Abbrechen eines GitHub Copilot CLI Vorgangs und Zurücksetzen von Änderungen

Erfahren Sie mehr über die verschiedenen Möglichkeiten zum Abbrechen eines aktiven Copilot Vorgangs und darüber, wie Sie während einer Sitzung vorgenommene Änderungen zurücksetzen, wenn das Ergebnis nicht ihren Erwartungen entspricht.

Introduction

Wenn Sie in einer interaktiven Copilot CLI Sitzung arbeiten, können Sie ESC oder STRG+C drücken, um zu steuern, was Copilot passiert. Beide Keypressen können Vorgänge abbrechen, aber sie funktionieren etwas anders:

  •           <kbd>STRG</kbd>+<kbd>C</kbd> wirkt sofort, ohne dass ein bestätigender zweiter Druck ausgeführt wird – entfernen Sie zuerst alle Eingabeaufforderungen in der Warteschlange (eine pro Taste), und brechen Sie dann den aktuellen Vorgang ab.
    
  • Eine einzelne ESC-Taste bietet Ihnen schrittweisere, mehr stufende Steuerung. Während Copilot aktiv arbeitet, bricht ein einzelner Druck auf Esc den aktuellen Vorgang nicht sofort ab – stattdessen wird ein Hinweis angezeigt, und ein zweites Drücken unterbricht den aktuellen Vorgang. In einer lokalen Sitzung werden alle in die Warteschlange eingereihten Prompts dann als nächster Schritt verarbeitet. In einer remotegestützten oder angehängten Sitzung wird der Vorgang stattdessen durch das zweite Drücken vollständig abgebrochen, und Eingabeaufforderungen in der Warteschlange werden nicht auf eine Folgerunde übertragen.

Wenn Copilot bereits Änderungen vorgenommen hat und Sie diese rückgängig machen möchten, können Sie zu einem früheren Punkt in der Sitzung zurückkehren. Während Copilot arbeitet, verfolgt Copilot CLI die Änderungen an den Dateien, die es als Reaktion auf jede Aufforderung vornimmt. Auf diese Weise können Sie zu einem früheren Punkt zurückspulen, indem Sie zweimal ESC drücken, wenn Copilot sich im Leerlauf befindet und der Eingabebereich leer ist. Wenn Sie zurückspulen, wählen Sie aus, ob nur das Gespräch zurückgespult oder auch die von Copilot geänderten Dateien wiederhergestellt werden sollen.

Was das Drücken von ESC in verschiedenen Situationen tut

Wenn Sie ESC einmal drücken, werden je nach aktuellem Zustand der Sitzung unterschiedliche Aktionen ausgeführt:

Aktueller ZustandWas das Drücken von ESC bewirkt
Copilot ist ohne Eingabeaufforderungen in der Warteschlange aktiv.Zeigt einen Hinweis an: „Zum Abbrechen erneut Esc drücken“. Der ausgeführte Vorgang wird nur abgebrochen, wenn Sie ESC innerhalb einer halben Sekunde erneut drücken.
Copilot ist aktiv und es gibt wartende Eingabeaufforderungen.Zeigt die Erinnerung „Zum Abbrechen erneut Esc drücken“ an. Durch erneutes Drücken von ESC wird der aktuelle Vorgang unterbrochen. In einer lokalen Sitzung werden die in die Warteschlange eingereihten Prompts dann als nächste Interaktion verarbeitet; in einer remotegestützten oder verbundenen Sitzung wird der Vorgang vollständig abgebrochen, und die in die Warteschlange eingereihten Prompts werden nicht als nachfolgende Interaktion ausgeführt.
Ein Berechtigungsdialogfeld ist geöffnet.Einmal Esc drücken, um die ausstehende Anfrage abzulehnen (kein zweiter Tastendruck erforderlich).
Ein Dialogfeld, eine Überlagerung oder eine Auswahl ist geöffnet.Schließt das Dialogfeld, die Überlagerung oder den Auswahldialog.
Copilot ist im Leerlauf.Zeigt eine kurze Erinnerung, dass das schnelle erneute Drücken von ESC die Rückspulenauswahl öffnet. Siehe Änderungen rückgängig machen.

Wenn Sie Esc zweimal schnell drücken, während Copilot inaktiv ist und der Eingabebereich leer ist, können Sie zu einem früheren Punkt in der Sitzung zurückkehren. In anderen Situationen führt ein double ESC eine der folgenden Aktionen aus, in dieser Reihenfolge der Priorität:

  • Bricht einen ausgeführten Shellbefehl ab.
  • Stoppt die aktuelle Antwort.
  • Beendet Hintergrund-Agents.
  • Löscht Text im Eingabebereich.

Wenn keine dieser Elemente zutrifft, wird die Zurückspulenauswahl angezeigt.

Wann ESC anstelle von STRG+C verwendet werden sollte

Der Hauptunterschied zwischen diesen beiden Methoden zum Abbrechen eines Vorgangs besteht darin, dass Esc für einen graduellen, gezielten Eingriff konzipiert ist, während STRG+C ein harter Stopp ist.

Verwenden Sie ESC , wenn Sie eine bestätigende Taste drücken möchten, bevor Sie einen Vorgang unterbrechen. Wenn ein Berechtigungsdialogfeld angezeigt wird und Sie diese bestimmte Anforderung verweigern möchten, wird die Anforderung einmal durch Drücken von ESC abgelehnt und der aktuelle Vorgang beendet. Wenn Sie Nachverfolgungsaufforderungen in einer lokalen Sitzung in die Warteschlange gestellt haben, unterbricht das Drücken von ESC zweimal den aktuellen Vorgang und verarbeitet die in die Warteschlange eingereihten Eingabeaufforderungen als nächster Schritt. In einer remote-gestützten oder angehängten Sitzung wird stattdessen durch zweimaliges Drücken von Esc der Vorgang vollständig abgebrochen, und in der Warteschlange befindliche Aufforderungen werden nicht in einer nachfolgenden Runde ausgeführt.

Verwenden Sie STRG+C, wenn Sie abbrechen möchten, ohne das zweite Drücken zur Bestätigung, das Esc erfordert. Wenn keine Aufforderungen in der Warteschlange stehen, bricht ein einzelnes Strg+C die aktive Operation sofort ab. Wenn Sie Prompts in der Warteschlange haben, entfernt jedes Strg+C den zuletzt in die Warteschlange gestellten Prompt – einen pro Tastendruck – und bricht den aktiven Vorgang erst ab, wenn die Warteschlange leer ist. Alle Dateischreibvorgänge, die bereits in Bearbeitung sind, werden abgeschlossen – Dateien bleiben während des Schreibprozesses unbeschädigt –, aber alle weiteren geplanten Änderungen werden aufgegeben. Wenn strg+C ein zweites Mal innerhalb von zwei Sekunden gedrückt wird, wird die Sitzung vollständig beendet, wenn der Eingabebereich leer ist.

Verwenden Sie esc als Faustregel, wenn Sie selektiv eingreifen möchten, und STRG+C , wenn Sie aufhören und mit dem Vorgang beginnen möchten.

Änderungen rückgängig machen

**

Während Copilot inaktiv ist und kein Text im Eingabebereich vorhanden ist, können Sie ESC zweimal drücken, um eine Liste der Punkte in Ihrer aktuellen Sitzung anzuzeigen, zu denen Sie zurückspringen können. Jeder Punkt entspricht einer von Ihnen übermittelten Eingabeaufforderung, und das Zurückspulen führt die Sitzung wieder in den Zustand zurück, in dem es sich unmittelbar befand, bevor Copilot sie mit der Arbeit an dieser Eingabeaufforderung begonnen hat.

Nachdem Sie einen Rückspulenpunkt ausgewählt haben, entscheiden Sie, ob:

  • Die Unterhaltung nur zurückspulen, sodass Ihre Dateien unberührt bleiben.
  •           **Zurückspulen der Unterhaltung und Wiederherstellen von Dateien**, wodurch die geänderten Dateien Copilot zurückgesetzt werden, während Ihre eigenen späteren Änderungen vorgenommen werden.
    

Da nur die mit Copilot geänderten Dateien und nicht der gesamte Arbeitsbereich wiederhergestellt werden, funktioniert das Zurückspulen in jedem Verzeichnis, auch in Ordnern, die keine Git-Repositories sind.

Ausführliche Informationen zur Verwendung des doppelten ESC-Tastendrucks zum Zurücksetzen von Änderungen, die während einer Sitzung vorgenommen wurden, finden Sie unter Zurücksetzen von Änderungen, die während einer GitHub Copilot CLI Sitzung vorgenommen wurden.

Warnung

Durch das Zurückspulen wird der gesamte Arbeitsbereich in den Zustand zurückgerückt, in dem er sich in der ausgewählten Momentaufnahme befand. Dadurch werden alle Änderungen, die nach diesem Punkt vorgenommen wurden, zurückgesetzt – nicht nur änderungen, die von Copilot, sondern auch von manuellen Bearbeitungen vorgenommen wurden, und Änderungen, die sich aus Shellbefehlen ergeben. Alle neuen Dateien, die nach dem Erstellen der Momentaufnahme im Arbeitsbereich erstellt wurden, werden unabhängig vom Git-Status gelöscht.

Was geschieht, wenn Sie ein Rollback ausführen

Die Aktionen, die beim Zurücksetzen auftreten, hängen von der ausgewählten Option ab.

Wenn Sie die Unterhaltung zurückspulen und Dateien wiederherstellen möchten:

  1. Dateien werden wiederhergestellt. Die geänderten Dateien Copilot werden in den Zustand zurückgesetzt, in dem sie sich vor der ausgewählten Eingabeaufforderung befanden. Dateien, deren aktueller Inhalt nicht mehr mit dem Copilot zuletzt geschriebenen Inhalt übereinstimmt, z. B. weil Sie sie selbst bearbeitet haben, werden übersprungen, sodass Ihre späteren Bearbeitungen nicht überschrieben werden.
  2. Der Sitzungsverlauf wird gekürzt. Die Unterhaltung wird an den ausgewählten Punkt umgewoffen. Alle Nachrichten und Toolaufrufe, die nach diesem Punkt aufgetreten sind, werden aus der Sitzung entfernt.
  3. Veraltete Momentaufnahmen werden entfernt. Die erfassten Dateiänderungen für die verworfenen Durchläufe werden entfernt. Frühere Zeitpunkte bleiben für künftiges Zurückspulen verfügbar.
  4. Rollback bestätigt. Zeigt nach dem Rollback eine Meldung an, die angibt, Copilot wie viele Dateien wiederhergestellt wurden, und notiert alle Dateien, die übersprungen wurden.
  5. Ihre Eingabeaufforderung wird wiederhergestellt. Die dem ausgewählten Punkt zugeordnete Eingabeaufforderung wird im Eingabebereich platziert, sodass Sie sie bearbeiten und erneut übermitteln können.

Wenn Sie die Unterhaltung nur zurückspulen möchten, bleiben Ihre Dateien unberührt: Der Sitzungsverlauf wird abgeschnitten (Schritt 2), und Ihre Eingabeaufforderung wird im Eingabebereich wiederhergestellt (Schritt 5).

Änderungen, die nicht rückgängig gemacht werden können

Die Dateiwiederherstellung wird in den folgenden Situationen übersprungen oder nicht verfügbar:

  • Dateien über 10 MB. Einzelne Dateien, die größer als 10 MB sind, werden während der Aufnahme übersprungen, sodass Änderungen an diesen Dateien während eines Rollbacks nicht wiederhergestellt werden.
  • Mehr als 500 geänderte Dateien. Wenn mehr als 500 Dateien während einer einzigen Drehung geändert wurden, werden Dateiänderungen für diese Drehung nicht erfasst, sodass Sie dateien nicht wiederherstellen können. Andere Kurven sind nicht betroffen.
  • Dateien, die Sie selbst geändert haben. Dateien, deren aktueller Inhalt nicht mehr mit dem Copilot zuletzt geschriebenen Inhalt übereinstimmt, bleiben unberührt und nicht überschrieben.
  • Sitzungen ohne Dateinachverfolgung. Wenn Sie eine Sitzung fortsetzen, die gestartet wurde, bevor die Nachverfolgung von Dateiänderungen aktiviert wurde, ist nur das Zurückspulen von Unterhaltungen verfügbar. Starten Sie eine neue Sitzung, um Dateiänderungen wiederherzustellen.
  •           **Remoteunterstützte oder belegte Sitzungen.** Rewind ist für remote-gestützte Sitzungen nicht verfügbar oder solange in der Sitzung noch Vorgänge laufen.
    

Weiterführende Lektüre