본문 바로가기

Python_Beginer/GIT

[GIT]Git reset HEAD^(최신 커밋 취소 + 스테이지 취소)

반응형

Git은 버전 관리 시스템으로, 프로젝트의 이전 버전을 검색하고 복원할 수 있습니다.

이를 위해 Git은 여러 명령어를 제공합니다. 이 중에서 reset 명령어는 커밋을 취소하고, 스테이지를 취소하는 등 프로젝트를 이전 상태로 되돌리는 기능을 합니다.

 

Git reset 명령어에는 HEAD^, HEAD~n 등 다양한 옵션이 있습니다.

최신 커밋 취소 + 스테이지 취소를 위해서는 git reset HEAD^ 명령어를 사용합니다.

최근 취소 수량 커밋 취소를 위해서는 git reset HEAD~n 명령어를 사용합니다.

또한, reset 명령어에는 --soft, --mixed, --hard와 같은 옵션을 사용할 수 있습니다.

--soft 옵션은 최근 커밋을 하기 전 상태로 작업트리를 되돌리는 옵션입니다.

--mixed 옵션은 최근 커밋과 스테이징을 하기 전 상태로 작업트리를 되돌리는 옵션으로, 기본 옵션입니다.

--hard 옵션은 최근 커밋과 스테이징, 파일 수정을 하기 전 상태로 작업트리를 되돌리는 옵션으로, 복가 불가능합니다.

 

아래는 예제 코드입니다.

$ vim hello2.txt
$ git commit -am "message4"
$ git log
$ git reset HEAD^

먼저, hello2.txt 파일을 vim으로 열어서 편집한 후 git commit -am "message4" 명령어로 커밋합니다.

그리고 git log 명령어로 커밋 이력을 확인합니다.

이후, git reset HEAD^ 명령어를 입력하여 최신 커밋과 스테이지를 취소하고 이전 상태로 되돌립니다.

위의 예제 코드를 참고하여 Git reset 명령어를 사용하는 방법을 익히시기 바랍니다.

 

reset 옵션

명령 설명
--soft HEAD^ 최근 커밋을 하기 전 상태로 작업트리 되돌리기
--mixed HEAD^ 최근 커밋과 스테이징을 하기 전 상태로 작업트리 되돌리기(기본 옵션)
--hard HEAD^ 최근 커밋과 스테이징, 파일 수정을 하기 전 상태로 작업틀리 되돌리기(복가 불가능)

 

반응형