
[MIT Lecture: Shell & Coding 5] Git의 뼈대부터 이해하기: 스냅샷, DAG, 그리고 불변성의 철학 | 버전 관리 시스템: 객체 저장소와 분산 협
00:00 버전 관리 시스템인 Git의 개념과 시간 여행 및 평행 우주에 대한 비유적 도입
01:38 Git의 탄생 배경과 원시적인 파일 관리 방식을 넘어선 완벽한 변화 추적 시스템
02:50 단순 명령어 암기 방식의 한계와 '새는 추상화'로 인한 학습의 고충 설명
03:45 인터페이스 이면의 데이터 모델을 이해하기 위한 바텀업(Bottom-up) 탐험의 시작
04:13 파일의 변화량이 아닌 특정 순간의 전체 상태를 저장하는 스냅샷과 재귀적 구조
05:31 과거의 부모 커밋을 가리키며 무한히 팽창하는 방향성 비순환 그래프(DAG) 구조
07:29 과거 데이터를 수정하지 않고 새로운 데이터를 추가만 하는 불변성 원칙과 신뢰성
08:58 SHA-1 해시 함수를 통해 내용 자체가 신분증이 되는 결정론적 객체 저장소 원리
09:35 불변의 객체를 가리키는 가변적인 포인터로서의 브랜치(Branch)와 HEAD 참조
10:13 정교한 역사 기록을 위해 작업 내용을 선별하는 스테이징 영역의 역할과 3단계 구조
10:43 원리를 깨달은 사용자에게 단순한 타자가 아닌 우주 조작 언어가 된 명령어들
10:57 평행 우주의 생성과 병합, 그리고 충돌을 안전한 진화 과정으로 보는 관점
11:43 과거 시점으로 이동하는 체크아웃과 자유로운 실험 환경인 Detached HEAD 상태
12:28 로컬 저장소를 리모트 서버와 동기화하는 분산 협업 시스템의 우주적 연결망
13:00 데이터와 시간의 통제력을 얻은 탐험가들에게 전하는 마무리 인사와 철학적 질문


