공부기록/git
git reset
_우지
2022. 7. 19. 11:12
문제 가정
hard 리셋을 git graph 익스텐션을 사용해서 한번 해보자.
프로젝트를 진행하다가 기능구현을 위해 reset/test branch를 생성했다고 가정하자.
그런데 추가4를 구현하는 도중 엄청난 오류가 발생해서 처음부터 다시 시작해야하는 상황이 되었다.
그래서 추가 commit으로 되돌아가기로 했다.
--hard
kimdong-yeong@gimdong-yeongs-MacBook-Pro Boxiting-1 % git checkout reset/test
git reset --hard b84d08ade14c1e422bcffd6df7a1a3cd756c6912
다음과 같이 reset --hard는 이후 커밋은 모두 날려버린다.
이제 코드를 수정한후 add commit 을 하면된다.
또한 push를 할 경우에는 --force 를 사용해서 push 한다.
이때 여러명이 사용하는 브랜치에서는 git history 가 꼬일 수 있으므로 반드시 혼자 사용하는 브랜치에서 사용해야한다.
git push origin reset/test --force
-- mixed
mixed 는 reset을 하게 되면 다음과 같은 그래프가
추가 3 이후 커밋들이 아예 삭제 되지 않고 uncommited changed로 바뀌게 된다. 이후 기록들을 남기고 싶을때 사용하면 된다.