.git의 구조와 add, commit 실행 시, .git 내부는 어떤 변화가 일어나는지 알아 볼 것이다.
📕 .git의 구조
📘 add 원리
- index : add한 파일들의 정보(id, 파일명)가 저장되어 있음
- objects (blob) : 파일의 내용이 적혀있음
📘 commit 원리
- objects (commit) : commit 메시지 정보가 저장되어 있음 (누가 commit했는지, 파일 내용, tree object)
- objects (tree) : 해당 버전에 파일들의 이름과 내용이 link
- objects (parent) : 이전 버전의 object (commit)로 link
📘 status 원리
- index와 objects(commit)를 비교하여, 차이가 있을 경우 commit 대기파일이 있음
(working directory: 현재 프로젝트의 디렉토리, staging area: 대기 장소, repository: 최종 저장공간)