커밋이라는 것들 하나하나를 묻어놓은 타임캡슐(== 버젼)이라고 이해
Git에서 프로젝트를 과거로 되돌리는 방법은 크게 2가지
Reset
: 말 그대로 시간을 과거로 되돌리는 것한 단계 전 시점인 Add team Cheetas로 되돌아가기 위해, 돌아간 이후 행적을 히스토리에서 지워버리는 것!
Revert
: 내역을 삭제하는게 아니라 변화를 거꾸로 수행하는 캡슐을 하나 넣음으로써 결과적으로 Add team Cheetas 때와 같은 상태로 돌아가게 됨
특정 시점(Commit : 2) 에서 작업한거를 거꾸로 실행 하여, 이후 내역(Commit : 3,4,5)를 유지하면서 commit 2 작업 내용을 제거할 수 있다
-> Reset과 Revert의 차이
한번 공유가 된 커밋들은 revert를 사용해서 되돌리자
우선 기존의 .git 파일 백업
돌아갈 시점의 커밋 해시를 복사한후 git reset --hard (돌아갈 커밋 해시)
git revert b09d7f4b730e24bb08bd2129b87adb9f3a8712bb
revert 커밋이 새로 한개 더 생김
revert 관련 커밋들을 제거하고 마지막 시점으로 돌아가기 위해 reset 사용
git reset --hard fc2c24d690b241160a6566b74fa2d84cf80e92c4
HEAD의 현재 위치는 fc2c24d입니다 Replace Cheetas with Panthers
git revert --no-commit b09d7f4b730e24bb08bd2129b87adb9f3a8712bb
체크박스 체크한 이후(변경 사항 git add. 하는 것과 같은 맥락) 상단 커밋 버튼 클릭