명령 결과 파일 내용이 수정하기 전으로 복원됩니다. 정확하게 이야기하자면 작업 디렉터리 변경 내용은 취소, 준비 영역의 변경 내용은 유지, 저장소 파일은 그대로 유지됩니다. 예제에서는 기껏 한 줄 삽입한 것이 전부이지만, 코드를 작성하다 헤매는 바람에 아예 처음으로 되돌리고 싶다면 git restore가 유용할 것입니다.
administrator@vmgate:~/gittest$ cat 2019AD.txt
Why have dreams that cannot be?
Why does this chaos kill me?
코드를 작성하고 준비 영역으로 보낸 상황이라면 어떻게 해야 할까요? ➊ 파일을 수정하고 ➋ git add 명령으로 파일을 준비 영역으로 보낸 후 ➌ git status 명령으로 확인한 결과입니다.
administrator@vmgate:~/gittest$ echo 'Why this imperfect begining' >> 2019AD.txt ➊ administrator@vmgate:~/gittest$ git add 2019AD.txt ➋ administrator@vmgate:~/gittest$ git status ➌ On branch master Changes to be committed: (use "git restore --staged <file>..." to unstage) modified: 2019AD.txt
이렇게 해보세요 ≣
여기에서 다시 해당 파일을 수정하게 되면 파일이 작업 디렉터리와 준비 영역 양쪽에서 모두 수정된 상태로 존재합니다. 이 경우 파일을 원래대로 되돌리려면 git restore 명령으로 최근에 변경한 작업 디렉터리의 파일을 되돌리고, 다시 준비 영역으로 보낸 파일을 되돌려야 합니다.