Git | GitLab

[Git] restore - 수정 사항 삭제

비번변경 2022. 8. 18. 16:40

checkout 기능 분리

공식 문서는 git checkout의 기능을 다음과 같이 정의하고 있다.

  • git checkout : Switch branches or restore working tree files

즉, 두 개 이상의 기능을 가지고 있는데 2.23 버전에서 기능 각각이 switch, restore 명령어로 분리되었다.

이 글에서는 restore 명령어에 대해 정리한다. git switch는 2022.08.17 - [Git] switch에서 정리했다.

 

 

restore

restore는 checkout의 기능 중 파일 내용을 되돌리는 기능만을 담당한다. 옵션 없이 사용하면 HEAD commmit으로 복구한다.

git restore <FILE>

# 예시
git restore README.md

git restore README.md

 

 

git restore --source

--source 옵션을 사용하면 지정한 커밋 상태로 변경할 수 있다.

git restore --source <COMMIT> <FILE>

 

 

git restore --staged

--staged 옵션을 사용하면 add 한 파일을 unstaged 상태로 변경하고 수정사항을 초기화한다.

git restore --staged

git restore --staged <FILE>

# 예시
git restore --staged test.txt

git restore --staged test.txt

 

 

참고 문서

[Git] git restore 사용해 파일 단위 제어하기(git add 취소, 특정 커밋으로 되돌리기 등)

https://blog.outsider.ne.kr/1505