본문 바로가기
개발도구

Git ] reset 옵션 차이, soft, mixed, hard

by eteo 2023. 10. 27.

 

 

 

  • git reset --soft : 커밋 기록을 지우고 인덱스(staging area)와 working directory의 파일시스템은 변경하지 않고 유지하려면 soft 옵션을 사용한다.

 

  • git reset --mixed : HEAD는 해당 commit ID를 가르키고 인덱스도 초기화되지만 working directory는 그대로 유지한다.

 

  • git reset --hard :인덱스를 지우고 working directory의 추적된 모든 파일을 reset할 커밋 당시의 상태로 되돌리려면 hard 옵션을 사용한다.

 

 

 

$ git reset --hard ebbbca3
$ ls
a.txt b.txt c.txt

 

$ git reset --soft ebbbca3
$ ls
a.txt b.txt c.txt d.txt e.txt

 

 

 

 

Reference : https://www.theserverside.com/blog/Coffee-Talk-Java-News-Stories-and-Opinions/Git-reset-hard-vs-soft-Whats-the-difference

 

Git reset hard vs. soft: What's the difference?

Hard vs. soft git resets The key difference between git reset hard and soft commands is that a soft git reset does not revert staged or working tree files back to a previous state, while the hard git reset does. Neither the git reset hard nor soft commands

www.theserverside.com