Git을 사용하다 보면 HEAD라는 용어를 자주 접하게 됩니다. HEAD는 현재 체크아웃된 브랜치의 최신 커밋을 가리키며, Git의 상태를 결정하는 중요한 요소입니다. 이번 글에서는 HEAD의 개념과 역할, 그리고 이를 활용하는 방법을 살펴보겠습니다.
HEAD란?
HEAD는 보통 가장 최근의 커밋을 가리킵니다. Git에서 커밋은 하나의 스냅샷과 같습니다. 여러 개의 커밋이 쌓이면, HEAD는 가장 마지막(최신) 커밋을 가리키게 됩니다.
🔹 HEAD의 역할
- 최신 커밋을 가리킴
- 새로운 커밋이 발생하면 HEAD도 자동으로 이동
- 특정 커밋으로 되돌아갈 때 HEAD를 해당 커밋으로 이동 가능
Working Directory와 HEAD
이 이미지는 **working directory(작업 디렉터리)**와 HEAD의 관계를 보여줍니다.
- Working Directory(작업 디렉터리)는 현재 작업 중인 파일들이 위치하는 곳입니다.
- HEAD가 가리키는 커밋에 따라 working directory의 상태가 결정됩니다.
- git checkout을 사용하면 HEAD를 이동할 수 있으며, 이때 working directory도 해당 커밋의 상태로 바뀝니다.
핵심 정리
- HEAD가 가리키는 커밋이 working directory를 결정한다.
- HEAD를 변경하면 과거 특정 시점의 코드 상태로 되돌릴 수 있다.
HEAD의 위치와 커밋 구조
이 이미지는 HEAD가 어떻게 최신 커밋을 가리키는지 보여줍니다.
- 커밋 1(facd) → 커밋 2(4af1) → 커밋 3(eea5) 순서로 커밋이 이루어졌습니다.
- 현재 HEAD는 **가장 최근 커밋(eea5)**을 가리키고 있습니다.
- 만약 이전 커밋(예: 4af1)으로 HEAD를 이동하면, 과거 상태로 돌아갈 수 있습니다.
핵심 정리
- HEAD는 최신 커밋을 가리키며, 과거 커밋으로 이동할 수도 있다.
- Detached HEAD 상태에서는 특정 커밋을 직접 가리킬 수 있다.
마무리
Git의 HEAD 개념을 이해하면 커밋과 브랜치를 보다 효과적으로 관리할 수 있습니다.
이번 글에서 배운 내용을 정리하면 다음과 같습니다.
- HEAD는 가장 최근 커밋을 가리킨다.
- Working Directory는 HEAD가 가리키는 커밋의 상태에 따라 달라진다.
- HEAD를 이동하면 과거 특정 시점으로 돌아갈 수 있다.
Git을 사용할 때 HEAD의 역할을 잘 이해하고 활용하면, 버전 관리가 더욱 쉬워질 것입니다!
'시스템 개발 및 관리 > Git 사용법' 카테고리의 다른 글
Git reset의 3가지 옵션 (0) | 2025.03.16 |
---|---|
이전 커밋으로 reset 하기 (0) | 2025.03.16 |
두 커밋 간의 차이 (0) | 2025.03.15 |
긴 커맨드에 alias 설정하기 (0) | 2025.03.14 |
최신 커밋 수정하기 (0) | 2025.03.14 |