What is in that .git directory?
meain.io
오늘날 대부분의 소프트웨어 개발에서 git 은 빼놓을 수 없는 형상 관리 도구로 자리잡혀 있습니다.
이러한 git 이 어떻게 동작하는지 'git init' 명령어로 생성되는 '.git' 폴더 하위의 데이터 변화를 자세히 분석하여 설명한 글이 있어 공유드립니다.
글에서 주요하게 언급된 '.git' 폴더 하위에 있는 데이터의 역할을 정리해보면 다음과 같습니다.
📌 config
현재 저장소에 대한 git 설정을 정리한 텍스트 파일입니다.
작성자, 파일 모드 등과 같은 저장소에 대한 몇 가지 기본 설정이 작성되어 있습니다.
📌 HEAD
저장소의 현재 헤드를 가리키는 파일입니다.
base branch 설정을 어떻게 했느냐에 따라 처음 생성되는 HEAD 파일은 refs/heads/master 또는 refs/heads/main 또는 기타 설정한 것으로 나타납니다.
현재 저장소가 바라보고 있는 헤드가 무엇인지를 알 수 있도록 .git/refs/heads 폴더의 경로를 저장합니다.
📌 hooks
git 동작 전후에 실행할 수 있는 모든 스크립트를 관리하는 디렉토리 입니다.
📌 objects
git object, 즉 저장소의 파일과 커밋에 대한 데이터를 관리하는 디렉토리 입니다.
📌 refs
HEAD 파일에서도 잠시 언급되었지만, 브랜치(.git/refs/heads)와 태그(.git/refs/tags)를 가리키는 참조 또는 포인터를 저장하고 관리하는 디렉토리 입니다.
공유드린 원문에 git command 에 따라 .git 디렉토리의 변화를 자세히 설명하고 있으니
관심있으신 분들께서는 한번 읽어보시면 좋겠습니다.
📚 원문
https://blog.meain.io/2023/what-is-in-dot-git/
📚 함께 보면 좋은 글
📺 만화로 보는 GIT 탄생 이야기: https://careerly.co.kr/comments/68908?utm_campaign=self-share
git hooks 동작방식: https://blog.meain.io/2019/making-sure-you-wont-commit-conflict-markers/
다음 내용이 궁금하다면?
이미 회원이신가요?
2023년 10월 10일 오전 8:31
여러분 PostgreSQL 프로시저는 Python, JavaScript은 물론 Perl, Java, Lua 등도 사용할 수 있답니다~* 대부분 구식🤭 MySQL만 쓰셔서 모르시겠지만.. (도망간다)
AI가 앞으로 세상을 바꿀 어쩌구 저쩌구 하는 내용은 큰 관심 없다. 당연한 이야기기도 하고 너무 많이 듣는 이야기도 하기 때문이다. 본 기사에서 가장 흥미롭게 본 부분은 '한국은 챗GPT 사용이 가장 활발한 국가 중 하나다. 오픈AI에 따르면 한국의 주간 활성 챗
... 더 보기DB 프로시저 싫어하시는 분들 많으시죠? Lambda/Serverless Function 이라고 생각해보십시오! 사실상 Serverless Function이랑 똑같은 것. Serverless Function도 싫어하시면 린정.
스
... 더 보기얼마전에 신입 개발자 채용시 과제를 10분 내에 빠르게 만들어서 보낸 사람을 채용했다며, 빠르게 결과를 냈기 때문에 채용했다는 글이 SNS에 많이 돌았다. 그러면서 이렇게 말한다.
"알고리즘 많이 푸는 개발자보다, AI로 빠르게 결과 내는 사람을 선호. 알고리즘, 코딩 책 안 봐도 AI 도구만 적극 활용하면 취업 기회 잡을 수 있다."