Git 사용법(4) - 지난 commit 버전으로 reset하기

신용철·2020년 10월 26일
0

기타

목록 보기
5/7

1. commit 과거 버전으로 리셋하기(현재 commit정보 삭제)

  • 명령어: git reset - -hard (commit ID)
  • HEAD가 master를 가리키고 있지 않을때는 reset이 되지 않습니다.
  • reset --hard 사용시 workingTree에 수정되고 아직 commit되지 않은 내용들까지 모두 삭제 되기 때문에 현재 작업중인 내용들이 모두 삭제됩니다.
  • 따라서 수정중인 문서가 있을 경우 - -hard 말고 다른 명령어를 사용하거나, 다른 폴더에 백업을 해야함.

2. 기존 commit정보 삭제하지 않고 이전 commit으로 버전 리셋하기

  • 명령어: git revert (현재 commit ID)
  • git reset 과의 차이점: git reset (commit ID)은 기존 commit을 삭제하지만 git revert는 삭제하지 않고 바로 이전 단계로 되돌리면서 새로운 commit을 생성합니다.(아래 그림 참고)
  • 만약, 바로 전 단계가 아닌 한참 전 단계로 가기 위해서는 반드시 가장 최신 것부터 차례로 revert를 해나가야합니다. 예를 들어, git log 상에 commit이 5단계가 있고 1단계로 revert하기 위해서는 5,4,3,2를 모두 revert해야합니다. 만약 1로 바로 revert를 하게 되면 충돌이 발생합니다.
profile
iOS developer

0개의 댓글