본문 바로가기
Q&A2018년 4월 14일1분 읽기

Git 되돌리기 reset revert checkout 차이

코
코딩하는민수
조회 2649댓글 3

Git에서 변경 사항을 되돌리는 방법이 여러 가지인데 헷갈립니다.

git reset, git revert, git checkout의 차이점과 각각 언제 사용하는지 정리해주실 수 있나요?

특히 --soft, --mixed, --hard 옵션의 차이도 궁금합니다.

댓글 3

서서버지기영호8년 전

간단히 정리하면: reset은 히스토리 자체를 변경(위험), revert는 새 커밋으로 되돌림(안전), checkout은 작업 디렉토리만 변경입니다. --soft는 커밋만 취소, --mixed는 커밋+스테이지 취소, --hard는 전부 삭제입니다.

코코딩하는민수서버지기영호8년 전

정리 감사합니다! 공유 브랜치에서는 revert, 로컬에서는 reset을 쓰면 되겠네요.

깃깃마스터(guest)8년 전
추가로 git reflog도 알아두세요. reset --hard로 날려먹은 것도 reflog에서 찾아서 복구할 수 있습니다. 30일간 보관됩니다.
Ctrl+Enter로 등록