명령어 뒤에 오는 커밋 해시의 의미가 다르다!
reset은 팀원들과 공유하는 원격 저장소의 커밋 내역을 강제로 조작한다는 문제점이 있다. 그래서 커밋 내역을 전부 삭제하는 것이 아닌 git revert
자체를 하나의 커밋으로 간주하여, 되돌린 작업도 공유할 수 있다.
-명령어 사용 : $ git revert d503eb0
1) soft : 커밋만 되돌림. 즉 git add
가 실행된 직후로 되돌아가고 바로 commit을 수행할 수 있는상태가 되는 것.
2) mixed (default) : 스테이지로 추가한 사실까지 되돌림. 즉 git add
가 실행되기 이전의 상태로 돌아가는 것.
3) hard : 작업 디렉토리의 변경 사항 모두 되돌림. 즉 commit된 파일들 중 tracked 상태의 파일들을 워킹 디렉토리에서 삭제한다.
-명령어 사용 : $ git reset --hard d503eb0