
| git reset을 사용하는 경우? |

다음과 같은 커밋 네역이 있다고 생각 합시다.

커밋 이전까지는 생각 못했던 심각한 실수를 C3로 commit 해버린 상태입니다.
이런 상황에서 실수로 커밋한 부분을 되돌리기 위해서 사용하는 것이 git reset입니다.
| git reset의 사용방법 |
$ git reset <mode> <commit id or commit ref>
위와 같은 사용방법을 가지고 있으며
mode는 option이라고도 합니다
commit id부분은 잘못된 부분의 commit id를 입력해도 좋으며 commit에 대한 참조를 사용해도 좋습니다.

만약 자식 commit에서 부모 commit으로 이동하고 싶다면?
commit id 대신 HEAD~ or HEAD~1 or HEAD^ or HEAD^1로 표현이 가능합니다.
만약 조상 commit으로 가려면 HEAD~2 or HEAD^2로
쉽게 HEAD~(돌아갈 횟수)라고 생각하시면 간단합니다.
| git reset mode(option) |

git reset에서는 다음과 같은 3가지 옵션을 줄 수 있습니다
3가지 옵션 모두 공통적으로 지정한 commit으로 HEAD와 branch가 모두 이동합니다.
--soft
soft 옵션은 주로 branch를 이동하는 용도로 사용할 수 있습니다.
--mixed(default)
Staging Area에 들어간 내용을 빼는 용도로 사용할 수 있습니다.
돌아갈 커밋 이후 다음 커밋을 하기 전 상태로 돌아갔다 보실 수 있습니다.
--hard
커밋을 지정한 시점으로 완전히 돌려버릴때 사용합니다.
해당 커밋한 그 시점으로 돌아갔다 보실 수 있습니다.
각 옵션에 따른 자세한 내용은 다음 포스팅에서 다루도록 하겠습니다.
'Git > Git - 시작하기' 카테고리의 다른 글
| [Git] reset, --mixed 옵션 자세히 알아보기 (0) | 2020.01.01 |
|---|---|
| [Git] reset, --soft 옵션 자세히 알아보기 (0) | 2020.01.01 |
| [Git] reflog 란? (0) | 2019.12.05 |
| [Git] rebase 개념 알아보기 (0) | 2019.11.18 |
| [Git] merge 개념 알아보기 (0) | 2019.11.18 |