> git reset "commit 해쉬번호"
==> 파일들을 작업하고 commit 히스토리를 기록했는데, 잘못 기록해서 전 commit으로 가야 한다면 위와 같이 git reset 7자리 commit해쉬번호로 갈 수 있다. 그런데 git checkout commit해쉬번호와 다르게 전 단계에서 후에 작업한 commit들을 다 날라간다.
==> commit은 전단계로 가나, 파일 내용은 기존에 있던 내용이니 체크아웃과 다른 점이 있다.
==> 패턴: git reset "commit해쉬번호"로 간 이후에 git switch -c 브랜치명을 만들어서 아니면 git branch 브랜치명 한 이후에 git switch 브랜치명으로 만들어서 add 와 commit작업을 한다. 그리고 마스터 브랜치로 가면 commit전단계인 내용이 그대로 있다.
> git reset --hard "commit 해쉬번호"나 "HEAD~전단계 번호"
==> 위의 git reset "commit해쉬번호"랑 동일하나 파일 내용과 기존에 있던 내용도 전단계 기록으로 간다.
==> 기존 commit기록 사라지는 것은 동일하다.
**git reset은 기존 commit이 날라가는 동작이기 때문에 몇개의 과거로 돌릴때나 과거로 돌아가는 경우에 조심해서 입력하는게 좋다.
> git revert "commit 해쉬번호"나 "HEAD~전단계 번호"
==> 새로운 commit이 형성 되는데 과거에 있는 commit단계로 간다.
==> 대신에 실수로 파일 삭제를 해서 다시 되돌릴 경우에는 revert가 되지 않는 경험이 있어서 참고로 알면 좋다.