Antilog의 개발로 쓰다
article thumbnail
반응형

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

커밋을 지정한 시점으로 완전히 돌려버릴때 사용합니다.

해당 커밋한 그 시점으로 돌아갔다 보실 수 있습니다.

 

각 옵션에 따른 자세한 내용은 다음 포스팅에서 다루도록 하겠습니다.

반응형
profile

Antilog의 개발로 쓰다

@Parker_J_S

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

profile on loading

Loading...