브랜치는 단지 41바이트짜리 파일입니다.

Git에서 매일 사용하는 브랜치. 브랜치는 어떤 구조로 만들어져 있을까요?

2025.06.17 | 조회 57 |
0
|
Git에 미친 남자의 프로필 이미지

Git에 미친 남자

매주 Git 관련 유익한 콘텐츠를 제공 합니다.

Git에서 매일 사용하는 브랜치. 이 브랜치가 실제로는 얼마나 단순한 구조인지 아시나요?

Git에서 브랜치는 단 41바이트짜리 텍스트 파일일 뿐입니다. 41바이트중 앞의 40바이트는 커밋의 해시값(SHA-1) 이고 나머지 1바이트는 개행 문자(\n)입니다.

예를 들어, main 브랜치는 .git/refs/heads/main이라는 경로에 저장된 파일이고, 그 안엔 아래처럼 SHA-1 해시가 들어 있습니다.

$ cat .git/refs/heads/main 
9719faaf84a2223edf255a88568de69bb40299c6

이 파일을 열어보면 브랜치가 특정 커밋을 가리키는 포인터 역할만 한다는 것을 알 수 있습니다.

$ git show-ref     // 모든 참조의 full hash를 보여줌
9719faaf84a2223edf255a88568de69bb40299c6 refs/heads/main
c33fb4469e8989fde31594a82990722f718a97db refs/remotes/origin/main

이것이 바로 Git이 빠르고 유연한 이유 중 하나입니다. 브랜치를 생성하고 삭제해도 무거운 작업이 일어나지 않죠. 그저 ‘커밋을 가리키는 텍스트 파일 하나’만 생기거나 사라질 뿐입니다.

다가올 뉴스레터가 궁금하신가요?

지금 구독해서 새로운 레터를 받아보세요

✉️

이번 뉴스레터 어떠셨나요?

Git에 미친 남자 님에게 ☕️ 커피와 ✉️ 쪽지를 보내보세요!

댓글

의견을 남겨주세요

확인
의견이 있으신가요? 제일 먼저 댓글을 달아보세요 !
© 2025 Git에 미친 남자

매주 Git 관련 유익한 콘텐츠를 제공 합니다.

메일리 로고

도움말 자주 묻는 질문 오류 및 기능 관련 제보

서비스 이용 문의admin@team.maily.so

메일리 사업자 정보

메일리 (대표자: 이한결) | 사업자번호: 717-47-00705 | 서울특별시 성동구 왕십리로10길 6, 11층 1109호

이용약관 | 개인정보처리방침 | 정기결제 이용약관 | 라이선스