[Git] 작업을 되돌리는 방법 - revert, reset

miyeon·2023년 3월 22일
0

Git

목록 보기
3/6
post-thumbnail

revert와 reset의 차이

명령어 뒤에 오는 커밋 해시의 의미가 다르다!

  • revert : 이전 커밋 내역들을 그대로 두고, 되돌리고 싶은 커밋의 코드만 복원시킨다. (취소이력이 남음)
  • reset : 커밋 내역들을 삭제하고, 특정 시점의 커밋으로 되돌아간다.
  • 특정 사건을 없었던 일로만드는 revert, 시계를 과거로 돌리는 reset

1. revert

reset은 팀원들과 공유하는 원격 저장소의 커밋 내역을 강제로 조작한다는 문제점이 있다. 그래서 커밋 내역을 전부 삭제하는 것이 아닌 git revert 자체를 하나의 커밋으로 간주하여, 되돌린 작업도 공유할 수 있다.
-명령어 사용 : $ git revert d503eb0

2. reset

옵션

1) soft : 커밋만 되돌림. 즉 git add 가 실행된 직후로 되돌아가고 바로 commit을 수행할 수 있는상태가 되는 것.
2) mixed (default) : 스테이지로 추가한 사실까지 되돌림. 즉 git add가 실행되기 이전의 상태로 돌아가는 것.
3) hard : 작업 디렉토리의 변경 사항 모두 되돌림. 즉 commit된 파일들 중 tracked 상태의 파일들을 워킹 디렉토리에서 삭제한다.
-명령어 사용 : $ git reset --hard d503eb0



참고 📝

profile
내가 보려고 기록하는 블로그

0개의 댓글