Skip to main content

GitHub Copilot 명령 줄 인터페이스 (CLI) 세션 중에 변경한 내용을 롤백하기

이전 프롬프트로 코파일럿 CLI 세션을 되감아서 변경 내용을 실행 취소하고 리포지토리를 이전 상태로 복원하십시오.

Introduction

대화형 코파일럿 CLI 세션에서 작업하는 경우 파일을 변경하고, Copilot 셸 명령을 실행하고, 리포지토리를 수정할 수 있습니다. 결과가 예상과 다른 경우 세션의 이전 지점으로 되감아 해당 변경 내용을 실행 취소할 수 있습니다.

프롬프트를 입력하면 작업 영역 상태의 스냅샷을 만드는 것이 코파일럿 CLI 가장 먼저 수행됩니다. 이 스냅샷을 사용하면 필요한 경우 세션의 해당 지점으로 롤백할 수 있습니다. Esc 키를 두 번 누르거나 슬래시 명령을 사용하여 되감기를 트리거할 /undo 수 있습니다.

이 문서에서는 변경 내용을 롤백하는 방법을 설명합니다. 세션의 이전 지점으로 되감는 방법에 대한 자세한 개념 정보는 GitHub Copilot 명령 줄 인터페이스 (CLI) 작업을 취소하고 변경 사항을 되돌리기을 참조하세요.

필수 조건

  • 하나 이상의 커밋을 사용하여 Git 리포지토리에서 작업해야 합니다. 코파일럿 CLI 는 Git 작업을 사용하여 작업 영역 상태를 추적하고 복원합니다.
  • 스냅샷이 있어야 합니다. 스냅샷은 CLI 세션에서 각 상호 작용 Copilot 을 시작할 때 자동으로 만들어집니다. 세션의 첫 번째 프롬프트 전에 변경한 내용을 롤백하거나 스냅샷 만들기를 건너뛴 단계의 리포지토리 상태로 롤백할 수 없습니다. 롤백할 수 없는 변경 내용을 참조하세요.

Esc 키를 두 번 눌러 롤백

경고

  • 되감기를 수행하면 전체 작업 영역이 선택한 스냅샷의 상태로 복원됩니다. 이렇게 하면 해당 시점 이후에 수행된 모든 변경 내용뿐만 아니라 수동으로 편집한 Copilot내용과 셸 명령으로 인한 변경 내용도 되돌립니다. 스냅샷을 만든 후 작업 영역에서 만든 새 파일은 Git 상태에 관계없이 삭제됩니다.
  • 되감기 취소할 수 없습니다. 스냅샷으로 롤백하면 해당 시점 이후의 모든 스냅샷 및 세션 기록이 영구적으로 제거됩니다.
          Copilot 입력한 프롬프트에 응답이 완료되면 다음을 수행합니다.
  1. 입력 영역이 비어 있는지 확인합니다. 입력 영역에 텍스트가 있는 경우 연속해서 Esc 키를 두 번 누르면 텍스트가 지워집니다.

  2.        <kbd>Esc</kbd> 키를 두 번 연속해서 눌러 되감기 선택기를 엽니다.
    

    되감기 선택기는 현재 세션에 사용할 수 있는 스냅샷을 가장 최근의 첫 번째 스냅샷과 함께 나열합니다. 가장 최근 스냅샷 10개가 표시됩니다. 사용할 수 있는 스냅샷이 10개가 넘는 경우 화살표 키를 사용하여 이전 스냅샷을 아래로 스크롤할 수 있습니다.

    각 스냅샷마다 입력한 프롬프트의 시작 부분이 표시되며, 제출한 시점이 얼마나 지났는지도 함께 나타납니다.

  3. 롤백할 스냅샷을 선택하세요. 그러면 연결된 프롬프트를 입력했을 때 리포지토리가 있었던 상태로 돌아갑니다.

    참고

    리포지토리는 프롬프트에서 작업을 완료한 직후가 아니라 프롬프트에서 작업을 시작하기 직전에 Copilot 해당 상태로 롤백됩니다.

    선택한 프롬프트가 입력 영역에 표시되므로 필요한 경우 편집하고 다시 제출할 수 있습니다.

          `/undo` 슬래시 명령어로 롤백하기

슬래시 명령 /undo과 그 별칭 /rewind은 되감기 선택기를 여는 또 다른 방법을 제공합니다.

두 명령 모두 유휴 상태이고 입력 영역에 텍스트가 없을 때 Copilot 키를 두 번 눌러 얻는 것과 동일한 결과를 생성합니다.

롤백 확인

롤백한 후 Git 명령을 사용하여 리포지토리의 상태를 확인하고 예상과 일치하는지 확인할 수 있습니다.

입력을 ! 사용하면 입력 프롬프트에서 코파일럿 CLI 직접 셸 명령을 실행할 수 있으므로 리포지토리 상태를 확인하기 위해 CLI를 종료할 필요가 없습니다.

이 작업을 수행하려면이 명령을 입력합니다.
수정, 스테이징 또는 추적 해제로 표시되는 파일을 확인합니다.! git status
현재 커밋의 SHA 및 커밋 메시지를 표시합니다.! git log --oneline -1
단계에 올리지 않은 변경 내용을 검토하세요.! git diff

추가 읽기