git
[git] 가장 최근의 커밋 취소 (git reset HEAD^)
떨어지는 용
2023. 4. 20. 15:33
▶[git] 가장 최근의 커밋 취소 (git reset HEAD^)
▶설명
git 명령어 중에 가장 최근의 커밋(commit)을 취소하는 방법을 알아보도록 하겠습니다.
자주 사용하는 명령어라서 간단하게 명령어만 적도록 하겠습니다.
자세한 내용은 git 가이드 문서를 참고하시면 좋습니다.
Git - Reset 명확히 알고 가기
지금까지 reset 명령을 실행하는 기본 형태와 사용 방법을 살펴봤다. reset 명령을 실행할 때 경로를 지정하면 1단계를 건너뛰고 정해진 경로의 파일에만 나머지 reset 단계를 적용한다. 이는 당연한
git-scm.com
▶명령어
기본
git reset HEAD^
HEAD는 현재 브랜치를 가리키는 포인터입니다.
HEAD^ 의 경우 HEAD의 바로 이전 커밋(commit)으로 돌린다는 의미이다.
reset 에서 제공하는 옵션을 간단하게 정리하였습니다.
soft
git reset --soft HEAD^
- 커밋(commit) 취소
- 커밋 취소된 파일은 스테이징으로 복구
- 파일 수정사항 유지
mixed (기본 옵션)
git reset --mixed HEAD^
두 개의 명령어가 동일합니다.
git reset HEAD^
- 커밋(commit) 취소
- 커밋 취소된 파일은 스테이징 취소
- 파일 수정사항 유지
hard
git reset --hard HEAD^
- 커밋(commit) 취소
- 커밋 취소된 파일은 스테이징 취소
- 파일 수정사항 삭제
간단히 정리하면 아래의 표와 같습니다.
커밋(Committed) 취소 | 스테이징(Staged) 취소 | 파일 수정사항(Modified) 취소 | |
soft | O | X | X |
mixed | O | O | X |
hard | O | O | O |
▶마치며
git 을 사용할 때 정말 자주 사용하는 명령어입니다.
도움이 되었으면 좋겠습니다.