Introduction
Lorsque vous travaillez dans une session interactive Copilot pour CLI , vous pouvez appuyer sur Échap ou Ctrl+C pour contrôler ce qui Copilot se passe. Les deux touches peuvent annuler les opérations, mais elles fonctionnent légèrement différemment :
- Ctrl+C prend effet immédiatement, sans qu’une seconde pression soit nécessaire : les invites en attente sont d’abord supprimées (une à chaque pression), puis l’opération en cours est annulée.
- Une seule pression sur la touche Échap offre un contrôle plus progressif, par étapes. Pendant que Copilot fonctionne activement, appuyer une seule fois sur Échap n’annule pas immédiatement l’opération : un message de rappel s’affiche, puis un deuxième appui exécute l’étape suivante : supprimer la requête la plus récemment mise en file d’attente, ou annuler l’opération lorsqu’il n’y a plus rien dans la file d’attente.
Si Copilot des modifications ont déjà été apportées et que vous souhaitez les annuler, vous pouvez revenir à un point précédent dans la session. Comme Copilot cela fonctionne, Copilot pour CLI effectue le suivi des modifications apportées au fichier lors de sa réponse à chaque invite. Cela vous permet de rembobiner jusqu’à un point antérieur en appuyant deux fois sur Échap quand il Copilot est inactif et que la zone d’entrée est vide. Lorsque vous rembobinez, vous choisissez de rembobiner la conversation uniquement ou de restaurer les fichiers modifiés Copilot .
Que fait l'appui sur Échap dans différentes situations
Appuyez sur Échap une fois pour effectuer différentes actions en fonction de l’état actuel de la session :
| État actuel | Que se passe-t-il en appuyant sur Échap ? |
|---|---|
| Copilot est actif sans invite en file d’attente. | Affiche un rappel « Appuyez à nouveau sur Échap pour annuler ». L’opération en cours d’exécution est annulée uniquement si vous appuyez à nouveau sur Échap dans un demi-seconde. |
| Copilot est actif et il existe des invites en file d’attente. | Affiche le rappel « Appuyez à nouveau sur Échap pour annuler ». Appuyez de nouveau sur Échap pour supprimer l’invite mise en file d’attente la plus récente. |
| Une boîte de dialogue d’autorisation est ouverte. | Un seul appui sur Échap rejette la demande en attente (sans avoir à appuyer une deuxième fois). |
| Une boîte de dialogue, une superposition ou un sélecteur est ouverte. | Ferme la boîte de dialogue, la superposition ou le sélecteur. |
| Copilot est inactif. | Affiche un bref rappel indiquant que l’appui sur Échap une deuxième fois rapidement ouvre le sélecteur de rembobinage. Voir Annuler les modifications. |
Appuyer deux fois plus rapidement sur Échap , lorsqu’il Copilot est inactif, vous permet de revenir à un point antérieur dans la session. Si une opération est en cours, une double échap effectue l’une des opérations suivantes, dans cet ordre de priorité :
- Annule une commande shell en cours d’exécution.
- Arrête la réponse actuelle.
- Arrête les agents en arrière-plan.
- Efface le texte dans la zone d’entrée.
- Quitte le mode shell.
Si aucun de ces éléments ne s’applique, le sélecteur de rembobinage s’affiche.
Quand utiliser Escape au lieu de Ctrl+C
La principale différence entre ces deux méthodes d’annulation d’une opération est que échap est conçu pour une intervention progressive et ciblée, tandis que Ctrl+C est un arrêt dur.
Utilisez Échap lorsque vous souhaitez interagir avec Copilot sans nécessairement mettre fin à l’opération actuelle. Par exemple, si une boîte de dialogue d’autorisation s’affiche et que vous souhaitez refuser cette demande spécifique, appuyer sur Échap ferme la boîte de dialogue et Copilot continue de fonctionner, simplement sans utiliser l’outil que vous avez refusé. De même, si vous avez mis en file d’attente les invites de suivi et que vous souhaitez les annuler sans interrompre le travail déjà en cours, appuyez sur Échap pour supprimer l’invite mise en file d’attente la plus récente (répétez pour supprimer des invites antérieures), tandis que l’opération actuelle continue d’être en cours d’exécution.
Utilisez Ctrl+C lorsque vous souhaitez annuler sans avoir à appuyer une seconde fois pour confirmer, comme l’exige Échap. Si aucune commande n’est en attente, un seul Ctrl+C annule immédiatement l’opération en cours. Si vous avez des invites mises en file d’attente, chaque ctrl+C supprime l’invite la plus récente mise en file d’attente (une par pression) et annule l’opération active une seule fois que la file d’attente est vide. Toute écriture de fichier déjà en cours se termine , les fichiers ne sont pas endommagés au milieu de l’écriture, mais les modifications planifiées restantes sont abandonnées. Appuyer une seconde fois sur Ctrl+C dans un délai de deux secondes quand la zone d'entrée est vide quitte entièrement la session.
En règle générale, utilisez Échap lorsque vous souhaitez intervenir de manière sélective, et Ctrl+C lorsque vous souhaitez arrêter et recommencer.
Annulation des modifications
Bien qu’il Copilot soit inactif et qu'aucun texte ne se trouve dans la zone d’entrée, vous pouvez appuyer deux fois sur Échap pour afficher une liste de points dans votre session en cours vers laquelle vous pouvez revenir. Chaque point correspond à une invite que vous avez envoyée et le rembobinage ramène la session à l’état dans lequel elle était immédiatement avant Copilot de commencer à travailler sur cette invite.
Après avoir choisi un point de rembobinage, vous décidez s’il faut :
- Rembobinez la conversation uniquement, en laissant vos fichiers inchangés.
- Rembobinez les fichiers de conversation et de restauration, ce qui rétablit les fichiers Copilot modifiés tout en laissant vos propres modifications ultérieures en place.
Étant donné qu’il restaure uniquement les fichiers Copilot modifiés plutôt que l’espace de travail entier, le rembobinage fonctionne dans n’importe quel répertoire, y compris les dossiers qui ne sont pas des référentiels Git.
Pour plus d’informations sur l’utilisation de la touche échap double pour restaurer les modifications apportées pendant une session, consultez Restauration des modifications apportées pendant une CLI GitHub Copilot session.
Avertissement
Le rembobinage restaure tout votre espace de travail à l’état où il était au moment du snapshot sélectionné. Cela rétablit toutes les modifications apportées après ce point, non seulement les modifications apportées par Copilot, mais également toutes les modifications manuelles et les modifications résultant des commandes shell. Tous les nouveaux fichiers créés dans l’espace de travail après la prise de l’instantané sont supprimés, quel que soit leur état Git.
Que se passe-t-il lorsque vous faites un retour en arrière
Les actions qui se produisent lorsque vous restaurez dépendent de l’option que vous choisissez.
Si vous choisissez de rembobiner la conversation et de restaurer les fichiers :
- Les fichiers sont restaurés. Les fichiers Copilot modifiés sont rétablis à l’état dans lequel ils se trouvaient avant l’invite sélectionnée. Les fichiers dont le contenu actuel ne correspond plus à ce que Copilot le dernier écrit, par exemple, parce que vous les avez modifiés vous-même, sont ignorés afin que vos modifications ultérieures ne soient pas remplacées.
- L’historique des sessions est tronqué. La conversation est rewound au point sélectionné. Tous les messages et appels d’outil qui se sont produits après ce point sont supprimés de la session.
- Les instantanés obsolètes sont supprimés. Les modifications apportées au fichier capturé pour les tours ignorés sont nettoyées. Les points antérieurs restent disponibles pour les rembobinages futurs.
- Retour en arrière confirmé. Après la restauration, Copilot affiche un message indiquant le nombre de fichiers restaurés et note les fichiers ignorés.
- Votre invite est restaurée. L’invite associée au point sélectionné est placée dans la zone d’entrée. Vous pouvez donc la modifier et la soumettre à nouveau.
Si vous choisissez de rembobiner la conversation uniquement, vos fichiers sont laissés inchangés : l’historique des sessions est tronqué (étape 2) et votre invite est restaurée dans la zone d’entrée (étape 5).
Modifications qui ne peuvent pas être restaurées
La restauration des fichiers est ignorée ou indisponible dans les situations suivantes :
- Fichiers de plus de 10 Mo. Les fichiers individuels de plus de 10 Mo sont ignorés pendant la capture, de sorte que les modifications apportées à ces fichiers ne sont pas restaurées lors d’une restauration.
- Plus de 500 fichiers modifiés. Si plus de 500 fichiers ont été modifiés lors d’un tour unique, les modifications de fichier pour ce tour ne sont pas capturées. Vous ne pourrez donc pas restaurer les fichiers pour celui-ci. D’autres tours ne sont pas affectés.
- Fichiers que vous avez modifiés vous-même. Fichiers dont le contenu actuel ne correspond plus à ce que le Copilot dernier écrit est laissé inchangé plutôt que remplacé.
- Sessions sans suivi de fichier. Si vous reprenez une session démarrée avant l’activation du suivi des modifications de fichier, seul le rewind de conversation est disponible. Démarrez une nouvelle session pour pouvoir restaurer les modifications de fichier.
- Sessions sauvegardées à distance ou occupées. Le rembobinage n’est pas disponible pour les sessions sauvegardées à distance ou pendant que la session est toujours en cours.