Skip to main 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:

  • STRG+C 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 nicht sofort ab – stattdessen wird zunächst ein Hinweis angezeigt, und ein zweiter Tastendruck führt den nächsten Schritt durch: die zuletzt in die Warteschlange gestellte Eingabeaufforderung zu entfernen oder den Vorgang abzubrechen, wenn nichts mehr in der Warteschlange ist.

Wenn Copilot Sie bereits Änderungen vorgenommen haben und sie rückgängig machen möchten, können Sie einen Rollback auf einen vorherigen Punkt in der Sitzung vornehmen. Verfolgt wie Copilot funktioniert die Dateiänderungen, die er vorgibt, Copilot CLI während er auf jede Eingabeaufforderung antwortet. 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 die Unterhaltung zurückspulen, wählen Sie aus, ob die Unterhaltung nur zurückspulen soll, oder ob sie auch die geänderten Dateien Copilot wiederherstellen möchten.

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 die zuletzt in die Warteschlange eingereihte Eingabeaufforderung entfernt.
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.

Durch zweimal schnelles Drücken von ESC im Copilot Leerlauf können Sie einen Rollback zu einem früheren Punkt in der Sitzung ausführen. Wenn ein Vorgang ausgeführt wird, führt ein double ESC eine der folgenden Aktionen aus, und zwar in dieser Reihenfolge der Priorität:

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

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 mit Copilot interagieren möchten, ohne den aktuellen Vorgang unbedingt zu beenden. Wenn z. B. ein Berechtigungsdialogfeld angezeigt wird und Sie diese bestimmte Anforderung verweigern möchten, wird das Dialogfeld durch Drücken von ESC geschlossen und Copilot funktioniert weiterhin – es wird nur nicht das Tool verwendet, das Sie verweigert haben. Wenn Sie Nachverfolgungsaufforderungen in die Warteschlange gestellt haben und sie abbrechen möchten, ohne die bereits ausgeführte Arbeit zu unterbrechen, wird durch Drücken von ESC die zuletzt in die Warteschlange eingereihte Eingabeaufforderung entfernt (wiederholen, um frühere Eingabeaufforderungen zu entfernen), während der aktuelle Vorgang weiterhin ausgeführt wird.

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 Dateien Copilot wiederhergestellt werden, die nicht im gesamten Arbeitsbereich geändert wurden, funktioniert das Zurückspulen in jedem Verzeichnis, einschließlich Ordnern, die keine Git-Repositorys 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 Wendungen werden bereinigt. Frühere Punkte bleiben für zukünftige Rü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.
  • Remote-gesicherte oder ausgelastete Sitzungen. Der Rücklauf ist für Remote-gesicherte Sitzungen nicht verfügbar, oder während die Sitzung noch in Bearbeitung ist.

Weiterführende Lektüre