본문 바로가기
개발

git 명령 파일 수정 내용 되돌리기 원복하기

by developer's warehouse 2024. 5. 20.

수정된 파일을 원래 상태로 되돌리는 방법은 두 가지가 있습니다.

 

git 명령 파일 수정 내용 되돌리기 원복하기 썸네일

1. 모든 파일에 대한 변경을 초기 상태로 되돌리기

모든 파일을 작업 이전의 상태로 돌리며, 이 작업은 되돌릴 수 없으므로 주의해야 합니다.
아래 명령을 통해 모든 파일의 수정을 없던 것으로 할 수 있습니다.

git reset --hard

 

2.특정 파일에 대한 변경만 되돌리기

특정 파일의 변경 사항만 초기 상태로 되돌리고 싶다면 아래 명령을 사용하면 됩니다.

git checkout --<파일명>

 

<파일명>에는 원하는 파일의 이름을 넣어주세요.
이렇게 하면 Git에서 특정 수정 파일을 원래대로 되돌릴 수 있습니다.

아래는 예시로 동작시켜 본 내용입니다.

% git status
현재 브랜치 master
브랜치가 'origin/master'에 맞게 업데이트된 상태입니다.

커밋할 변경 사항:
  (스테이지에서 제외하려면 "git restore --staged <file>..."을 사용하시오)
        새 파일:       volatile-tpcc.sql

커밋하도록 정하지 않은 변경 사항:
  (무엇을 커밋할지 바꾸려면 "git add <파일>..."을 사용하십시오)
  (작업 디렉토리의 변경을 무시하려면 "git restore <file>..."을 사용하시오)
        수정함:        drivers/testdriver.py

% git checkout -- drivers/testdriver.py

% git status
현재 브랜치 master
브랜치가 'origin/master'에 맞게 업데이트된 상태입니다.

커밋할 변경 사항:
  (스테이지에서 제외하려면 "git restore --staged <file>..."을 사용하시오)
        새 파일:       volatile-tpcc.sql

 

3. restore를 이용하여 원복하기

restore 명령으로도 이전 커밋으로 되돌리는 것이 가능합니다.

 

git restore <파일 이름>


Working Directory 에서 수정한 파일을 수정 전(직전 커밋)으로 되돌리기 위해서 아래와 같이 git restore 명령을 수행할 수 있습니다.

% git status
현재 브랜치 master
브랜치가 'origin/master'에 맞게 업데이트된 상태입니다.

커밋할 변경 사항:
  (스테이지에서 제외하려면 "git restore --staged <file>..."을 사용하시오)
        새 파일:       volatile-tpcc.sql

커밋하도록 정하지 않은 변경 사항:
  (무엇을 커밋할지 바꾸려면 "git add <파일>..."을 사용하십시오)
  (작업 디렉토리의 변경을 무시하려면 "git restore <file>..."을 사용하시오)
        수정함:        drivers/testdriver.py

% git restore drivers/testdriver.py

% git status
현재 브랜치 master
브랜치가 'origin/master'에 맞게 업데이트된 상태입니다.

커밋할 변경 사항:
  (스테이지에서 제외하려면 "git restore --staged <file>..."을 사용하시오)
        새 파일:       volatile-tpcc.sql
facebook twitter kakaoTalk kakaostory naver band shareLink