버전관리

[Git] git reset 명령어의 옵션

jwKim96 2021. 11. 11. 23:11

현재 커밋한 내역을 과거시점으로 되돌리고 싶을 때 사용하는 명령어이다.

주로 로컬에 한 커밋이 잘못되었을 경우 고쳐야할 때 많이 쓰인다.

git reset --soft HEAD^

명령은 현재 HEAD가 가리키는 커밋 이전의 상태로 되돌리며, 변경사항을 유지하며 staged 상태로 만든다는 것이다.

쉽게 말하면, 방금 한 커밋을 하기 직전 상태로 되돌린다는 것이다.

git reset은 세 가지 옵셔닝 있는데, 다음과 같다

  • soft : HEAD가 가리키는 브랜치를 옮긴다. (변경사항은 유지, staged 상태로 만듦)
  • mixed(default) : Index를 HEAD가 가리키는 상태로 만든다. (변경사항은 유지, unstaged 상태로 만듦)
  • hard : 워킹 디렉토리를 Index의 상태로 만든다.(변경사항 없어짐)