소개
대화형 코파일럿 CLI 세션에서 작업하는 경우 파일을 변경하고, Copilot 셸 명령을 실행하고, 리포지토리를 수정할 수 있습니다. 결과가 예상과 다른 경우 세션의 이전 지점으로 되감아 해당 변경 내용을 실행 취소할 수 있습니다.
Esc 키를 두 번 누르거나 슬래시 명령(또는 해당 별칭)을 사용하여 /undo 되감기를 트리거할 수 있습니다/rewind.
코파일럿 CLI 는 다음 두 가지 되감기 동작을 지원합니다.
- Git 기반 되돌리기: 프롬프트 시작 시점에 생성된 워크스페이스 스냅샷으로 되돌립니다.
- 도구 기반 되감기: 대화 기록만 되감거나 대화 기록을 되감고 변경된 파일을 복원할 Copilot 수 있습니다.
참고
도구 기반 되감기는 현재 실험적 기능이며, /experimental on 슬래시 명령어 또는 --experimental 명령줄 옵션을 사용한 경우에만 사용할 수 있습니다.
코파일럿 CLI 는 환경에 따라 이러한 되감기 동작 중 하나를 자동으로 선택하여 최상의 되감기 환경을 제공합니다.
활성화된 되감기 동작을 확인하려면 다음을 수행합니다.
- 선택 창에 스냅샷이 즉시 표시되고 그중 하나를 선택하면 롤백이 수행된다면, Git 기반 되감기를 사용 중인 것입니다.
- 되감기 지점을 선택하면 대화 전용 및 대화 + 파일이 있는 작업 메뉴가 열리면 도구 기반 되감기를 사용하는 것입니다.
이 문서에서는 변경 내용을 롤백하는 방법을 설명합니다. 세션의 이전 지점으로 되감는 방법에 대한 자세한 개념 정보는 GitHub Copilot 명령 줄 인터페이스 (CLI) 작업을 취소하고 변경 사항을 되돌리기을 참조하세요.
사전 요구 사항
- 되감기 지점이 있어야 합니다. 세션에서 첫 번째 프롬프트 전에 롤백할 수 없습니다.
- Git 기반 되감기 전용: 커밋이 하나 이상 있는 Git 리포지토리에 있어야 합니다.
- 도구 기반 되감기: 마지막으로 터치한 후 Copilot 변경된 파일의 경우 파일 복원을 건너뛸 수 있습니다.
Esc 키를 두 번 눌러 롤백
경고
- 되감기 취소할 수 없습니다. 롤백하면 이후 세션 기록이 영구적으로 제거됩니다.
Git 기반 되감기에서 롤백하면 전체 작업 영역이 선택한 스냅샷의 상태로 복원됩니다. 이렇게 하면 해당 시점 이후에 수행된 모든 변경 내용 Copilot뿐만 아니라 셸 명령의 수동 편집 및 변경 내용도 되돌립니다. 스냅샷을 만든 후 작업 영역에서 만든 모든 새 파일은 Git 상태에 관계없이 삭제됩니다.
* 도구 기반 되감기에서 파일을 복원할지 여부를 선택할 수 있습니다. 파일 복원을 선택하는 경우 이후 변경된 Copilot 파일은 최신 편집 내용을 덮어쓰지 않도록 변경되지 않은 상태로 유지될 수 있습니다.
Copilot 입력한 프롬프트에 응답이 완료되면 다음을 수행합니다.
-
입력 영역이 비어 있는지 확인합니다. 입력 영역에 텍스트가 있는 경우 연속해서 Esc 키를 두 번 누르면 텍스트가 지워집니다.
-
Esc 키를 두 번 연속해서 눌러 되감기 선택기를 엽니다.
선택기에는 현재 세션에 사용 가능한 되감기 지점이 가장 최근 항목부터 표시됩니다. 가장 최근 10개 지점이 한 번에 표시됩니다. 10개가 넘는 경우 화살표 키를 사용하여 이전 지점을 아래로 스크롤합니다. 각 되감기 지점마다 입력한 프롬프트의 시작 부분이, 제출한 지 얼마나 되었는지를 나타내는 정보와 함께 표시됩니다.
-
되감기 지점을 선택합니다.
- Git 기반 되감기에서 스냅샷을 선택하면 해당 프롬프트가 시작될 때 작업 영역이 상태로 복원됩니다.
- 도구 기반 되감기에서는 되감기 지점을 선택한 후 다음을 선택할 수 있습니다:
-
대화만 (기록 되감기, 파일은 변경되지 않음), 또는
-
대화 + 파일 (대화 기록이 되돌려지고 Copilot에 의해 변경된 복원 가능한 파일이 복원됨).
-
참고
Git 기반 되감기에서 리포지토리는 프롬프트에서 작업을 완료한 직후가 아니라 프롬프트에서 작업을 시작하기 직전에 Copilot 해당 상태로 롤백됩니다.
선택한 프롬프트가 입력 영역에 표시되므로 필요한 경우 편집하고 다시 제출할 수 있습니다.
/undo 슬래시 명령어로 롤백하기
슬래시 명령 /undo과 그 별칭 /rewind은 되감기 선택기를 여는 또 다른 방법을 제공합니다.
두 명령 모두 유휴 상태이고 입력 영역에 텍스트가 없을 때 Copilot 키를 두 번 눌러 얻는 것과 동일한 결과를 생성합니다.
롤백 확인
롤백한 후 Git 명령을 사용하여 리포지토리의 상태를 확인하고 예상과 일치하는지 확인할 수 있습니다.
입력을 ! 사용하면 입력 프롬프트에서 코파일럿 CLI 직접 셸 명령을 실행할 수 있으므로 리포지토리 상태를 확인하기 위해 CLI를 종료할 필요가 없습니다.
| 작업 | 이 명령을 입력합니다. |
|---|---|
| 수정, 스테이징 또는 추적 해제로 표시되는 파일을 확인합니다. | ! git status |
| 현재 커밋의 SHA 및 커밋 메시지를 표시합니다. | ! git log --oneline -1 |
| 단계에 올리지 않은 변경 내용을 검토하세요. | ! git diff |