티스토리 뷰
git reset 명령어는 인덱스 취소와 커밋 취소라는 두가지 동작을 한다.
커밋 취소의 경우에는 옵션에 따른 차이점을 숙지하는게 중요하다.
인덱스 취소
add 를 통해 인덱스에 추가된 파일을 취소한다.
# git add a.txt 취소
git reset a.txt
# 인덱스 파일 전체 취소
git reset
커밋 취소
이전 커밋 상태로 돌아간다. 실행모드(mixed, soft, hard)에 따라서 인덱스, 워킹트리까지 취소 시킬 수 있다.
--mixed (기본값)
HEAD 를 지정한 커밋 시점으로 복구한다.
모든 인덱스를 취소시키지만 워킹트리는 유지된다.
취소된 커밋/인덱스 내용은 워킹트리에 남아있다.
--soft
HEAD 를 지정한 커밋 시점으로 복구한다.
인덱스 및 워킹트리는 유지된다.
취소된 커밋 내용은 인덱스에 남아있다.
--hard
HEAD 를 지정한 커밋 시점으로 복구한다.
인덱스 및 워킹트리까지 해당 커밋 상태로 완전히 덮어쓴다.
취소된 커밋/인덱스/워킹트리 내용은 모두 삭제된다.
# 각 옵션을 이용하여 바로 이전 커밋 상태로 돌아간다 (옵션을 안주면 mixed 가 기본값)
git reset HEAD~
git reset HEAD~ --hard
git reset HEAD~ --soft
# 3번째 전 커밋 상태로 돌아간다
git reset HEAD~3
# 특정 커밋 상태로 돌아간다
git reset <커밋아이디>
# reset 전 HEAD 상태로 원복한다 (워킹트리, 인덱스는 복구되지 않음)
git reset ORIG_HEAD
# 인덱스와 워킹트리를 깨끗하게 만든다
git reset --hard
'개발기타' 카테고리의 다른 글
비전공자를 위한 이해할 수 있는 IT 지식 (0) | 2021.09.08 |
---|---|
AWS 서울 리전 IP 대역 확인하기 (0) | 2021.05.09 |
복잡한 정규식 만들기 (Lookahead, Lookbehind) (0) | 2019.04.10 |
세 개의 기둥 (협업을 위한 기본 자세) (0) | 2019.03.19 |
쉘스크립트에서 버전 검사 하기 (0) | 2018.10.30 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 그림으로 공부하는 IT 인프라 구조
- HTTP
- 안심 첫 문장
- 리팩토링
- 그림으로 배우는 HTTP & Network
- 코드악취
- https
- 위임
- aws fargate
- 조건부 로직
- 일잘러
- 일 잘하는 사람은 단순하게 말합니다
- 박소연
- Debugging
- AWS
- 변경함수
- amazon aurora
- 마틴파울러
- 질의함수
- 매개변수화
- 지시의 언어
- amazon vpc
- 제어플래그
- 리팩터링이란
- SSL
- 코드스멜
- Refactoring
- 디버깅
- Debug It! 실용주의 디버깅
- Debug
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함