reset X
revert O
(원격 저장소 공유 여부)
git reset 옵션 커밋ID
//옵션
1) soft : 스테이지 영역을 포함한 상태로 복원함
git reset --soft HEAD~ //이전 커밋으로 리셋
2) mixed : 워킹 디렉토리 영역만 포함한 상태로 복원
git reset --mixed 커밋ID
git reset 커밋ID
3) hard : 아예 싹 다 없애기
git reset --hard HEAD~
–soft : index 보존(add한 상태, staged 상태), 워킹 디렉터리의 파일 보존. 즉 모두 보존.
–mixed : index 취소(add하기 전 상태, unstaged 상태), 워킹 디렉터리의 파일 보존 (기본 옵션)
–hard : index 취소(add하기 전 상태, unstaged 상태), 워킹 디렉터리의 파일 삭제. 즉 모두 취소.
git reset --soft HEAD~2
git commit -m "두 단계 커밋 합치기"
>> 합쳐진 New 커밋이 생성된다
// stage > unstage
git reset 파일이름
git reset 커밋ID 파일이름
//병합 취소(--merge 옵션)
git reset --merge HEAD~ //이전 커밋 취소