HEAD는 체크아웃된 브랜치나 커밋을 가리키는 포인터
일반적으로 HEAD는 브랜치를 가리켜야 하지만 커밋을 가리키고 있는경우를 Detached HEAD 상태라고 한다
Detached HEAD 상태인 경우 연결된 브랜치가 없기 때문에 작업을 하고 커밋 후 다른 브랜치로 체크아웃하는경우
해당 커밋은 사라질수 있다.
커밋된 내용이 없는경우 그냥 체크아웃
git checkout main
커밋된 내용이 있는 경우
1. 임시 브랜치 생성 후 체크아웃
git branch temp
git checkout temp
2. 메인 브랜치의 커밋을 temp로 이동. 이후 체크아웃하고 푸쉬
git branch -f main temp
git checkout main
git push
3. 임시 브랜치는 제거
git branch -d temp