문제 가정
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로 바뀌게 된다. 이후 기록들을 남기고 싶을때 사용하면 된다.
'공부기록 > git' 카테고리의 다른 글
git cherry-pick (0) | 2022.07.19 |
---|---|
git revert , git revert conflict (0) | 2022.07.19 |
팀 개발을 위한 Git, GitHub 입문 보고 새롭게 알게된 점2 (0) | 2022.07.19 |
팀 개발을 위한 Git, GitHub 입문 보고 새롭게 알게된 점 (0) | 2022.07.18 |
GitHub 에서 GitLab으로 저장소 이전하기 (0) | 2022.07.15 |