Skip to main content

回退 GitHub Copilot 命令行界面 (CLI) 会话期间所做的更改

将您的 Copilot 命令行界面(CLI) 会话回退到先前的提示,以撤销更改并将存储库恢复到之前的状态。

介绍

在交互式 Copilot 命令行界面(CLI) 会话中工作时, Copilot 可以更改文件、运行 shell 命令和修改存储库。 如果结果不是你所期望的,可以返回到会话中的之前的某个点以撤销这些更改。

输入提示时,Copilot 命令行界面(CLI) 首先会拍摄您的工作区状态快照。 此快照允许你在需要时回退到会话中的该点。 可以通过按 Esc 两次或使用 /undo 斜杠命令触发倒退。

本文介绍如何回滚更改。 有关在会话中倒退到早期点的更多概念性信息,请参阅 取消 GitHub Copilot 命令行界面 (CLI) 操作并回滚更改

先决条件

  • 您必须在具有至少一个提交记录的 Git 存储库中工作。 Copilot 命令行界面(CLI) 使用 Git 操作来跟踪和还原工作区状态。
  • 快照必须存在。 每次您在 CLI 会话中与Copilot开始交互时,都会自动创建快照。 您无法回滚在会话中第一次提示前所做的更改,也无法回滚到跳过快照创建步骤的存储库状态。请参阅 无法回滚的更改

双击 Esc 键回退

警告

  • 倒退会将整个工作区还原到所选快照中的状态。 这将还原在该点之后所做的所有更改——不仅包括由Copilot所做的更改,还包括任何手动编辑以及由 shell 命令导致的更改。 删除快照后在工作区中创建的任何新文件,而不考虑其 Git 状态。
  • 回退无法撤销。 回滚到快照后,该点后的所有快照和会话历史记录都将永久删除。

Copilot完成响应您输入的提示后:

  1. 确保输入区域为空。 如果输入区域中有文本,则快速连续按 Esc 两次会清除文本。

  2. 连续两次按 Esc 打开回退选取器。

    回退选择器列出当前会话的可用快照,最新的在前。 将显示十个最新的快照。 如果有 10 个以上的快照可用,则可以使用 箭头 键向下滚动到以前的快照。

    对于每个快照,将显示你输入的提示的开头,并指示你提交了该快照的时间。

  3. 选择要回滚到的快照。 当输入相关提示时,这将把你返回到存储库的状态。

    注意

    存储库会在 Copilot 开始处理提示之前立即回滚到其状态,而不是在处理完提示后立即回滚。

    所选的提示将显示在输入区域中,以便根据需要编辑并重新提交它。

使用 /undo 斜杠命令回退

/undo斜杠命令及其别名/rewind提供了打开回退选取器的另一种方法。

两个命令产生的结果与在 Copilot 空闲且输入区域中没有文本时按两次 Esc 相同。

验证回滚

回滚后,可以使用 Git 命令来验证存储库的状态,并确认它是否符合预期。

通过键入 ! ,可以直接从 Copilot 命令行界面(CLI) 输入提示运行 shell 命令,因此无需退出 CLI 即可检查存储库状态。

要执行的操作输入此命令
检查哪些文件显示为已修改、暂存或未跟踪。! git status
显示当前提交的 SHA 和提交消息。! git log --oneline -1
查看未暂存的更改。! git diff

延伸阅读