Git이란 무엇인가…
Git이란 무엇인가
탄생 비화부터 GitHub 계정 만들기까지 — 1에서 100까지 총망라하는 Git 개념서
🔥 탄생 비화 — 분노가 만들어낸 도구
Git을 이해하는 가장 빠른 방법은 왜 만들어졌는가를 아는 것이다. 그리고 그 시작은 한 천재 프로그래머의 분노에서 비롯된다.
🐧 Linux와 BitKeeper — 2002년
세상에서 가장 유명한 오픈소스 운영체제 Linux를 만든 리누스 토발즈(Linus Torvalds). 그는 전 세계 수천 명의 개발자들과 협업하며 Linux 커널을 개발하고 있었다. 문제는 코드 관리였다. 수천 개의 파일, 수백만 줄의 코드를 매일 수정하는 개발자들의 작업을 어떻게 추적하고 합칠 것인가?
당시 리누스는 BitKeeper라는 상용 버전관리 도구를 무료로 사용하고 있었다. 불편하고 느리지만, 그나마 쓸 만한 선택지였다.
💥 결정적 사건 — 2005년 4월
그런데 Linux 커뮤니티의 한 개발자가 BitKeeper의 내부 구조를 역공학(Reverse Engineering)하려다 발각됐다. 격분한 BitKeeper사는 즉각 Linux 커뮤니티에 대한 무료 제공을 철회해버렸다.
리누스 토발즈는 대안을 찾아봤다. 당시 존재하던 CVS, Subversion 등 다른 도구들을 검토했지만 — 모두 마음에 들지 않았다. 기존 도구들은 느리고, 불편하고, Linux처럼 거대한 프로젝트를 감당하기엔 역부족이었다.
“없으면 만들면 되지.”
⚡ 단 10일 만에 — Git의 탄생
리누스 토발즈는 Linux 커널 개발을 잠시 멈추고, 2005년 4월 3일 새로운 버전관리 시스템 개발에 착수했다. 그리고 불과 열흘 후인 4월 7일, 최초의 Git commit이 이루어졌다. 놀랍게도 그 첫 commit 도구 자체가 Git이었다 — Git이 자기 자신을 관리하며 태어난 것이다.
4월 29일, 초기 Git은 Linux 커널에 초당 6.7개의 패치를 기록하는 속도 테스트를 통과했다. 목표 달성이었다.
이름의 비밀: ‘git’은 영국 속어로 “멍청한 놈”이라는 뜻이다. 리누스는 “나는 이기적인 놈이라 내 모든 프로젝트 이름을 내 이름을 따서 짓는다. 처음엔 Linux, 이제는 git”이라고 농담했다. 공식 매뉴얼에는 git을 “어리석은 콘텐츠 추적자”라고 설명한다.
📦 Git이란 무엇인가
한 문장으로 정리하면: 파일(특히 코드)의 변경 이력을 기록하고 언제든 되돌릴 수 있게 해주는 버전 관리 시스템이다.
비유하자면 — 문서 작업을 할 때 우리는 본능적으로 이런 행동을 한다:
Git은 이 번거로운 과정을 자동화하고 체계화한 도구다. 파일을 하나만 유지하면서도, 모든 과거 버전을 기억하고 언제든 꺼내볼 수 있다.
🧩 핵심 개념 완전 정리
| 명령어 | 뜻 | 비유 |
|---|---|---|
git init |
Git 저장소 초기화 | 캐비닛 새로 들여놓기 |
git add . |
변경 파일 선택 | 서류를 봉투에 넣기 |
git commit -m "메모" |
스냅샷 저장 | 날짜·메모 써서 캐비닛에 보관 |
git push |
GitHub에 업로드 | 캐비닛 사본을 외부 금고에 맡기기 |
git log --oneline |
commit 이력 보기 | 캐비닛 목록 열람 |
git revert |
특정 시점으로 복원 | 예전 버전 꺼내쓰기 |
git branch |
독립 작업 공간 생성 | 수정신고용 별도 복사본 만들기 |
git merge |
브랜치 합치기 | 수정본을 원본에 반영 |
git clone |
원격 저장소 복제 | 외부 금고에서 전체 꺼내오기 |
git pull |
최신 변경사항 가져오기 | 동료가 업데이트한 내용 받기 |
commit vs push — 이것만 기억하면 된다
commit만 하고 push 안 하면? 서버 자체에만 스냅샷이 있는 것. 서버가 날아가면 같이 소멸. push까지 해야 GitHub에도 백업돼서 완전히 안전하다.
🌐 GitHub는 어떻게 탄생했나
Git이 탄생하고 3년 후인 2008년, 세 명의 개발자(Tom Preston-Werner, Chris Wanstrath, PJ Hyett)가 Git 저장소를 쉽게 호스팅하고 공유할 수 있는 웹 서비스를 시작했다. 그게 바로 GitHub이다.
원리는 간단했다: 개발자들이 자기 코드를 GitHub에 올리면, 전 세계 누구나 볼 수 있고, 기여할 수 있고, 함께 개발할 수 있다. Git의 분산 철학과 인터넷이 만나 폭발적인 시너지를 냈다.
GitHub 서비스 시작. 오픈소스 프로젝트들이 대거 이전.
Git이 SVN(Subversion)을 제치고 가장 많이 사용되는 버전관리 시스템으로 등극.
Microsoft가 GitHub를 75억 달러(약 10조 원)에 인수. 오픈소스 커뮤니티는 긴장했지만, Microsoft는 무료 정책을 유지.
GitHub 사용자 1억 명 돌파. 전 세계 소프트웨어 개발의 사실상 표준 플랫폼이 됨.
AI 코딩 도구들(Claude Code, Copilot 등)이 Git과 완전히 통합돼 함께 사용되는 시대.
🚀 GitHub 계정 만들기 — 단계별 가이드
github.com 접속
브라우저에서 github.com 접속 → 우측 상단 Sign up 클릭. Google 계정으로도 가입 가능.
이메일 · 비밀번호 · 사용자명 입력
사용자명은 나중에 저장소 URL이 됨. 예: github.com/내이름/프로젝트명
이메일 인증
가입 이메일로 인증 코드가 발송됨. 코드 입력 후 완료.
새 저장소(Repository) 만들기
로그인 후 우측 상단 + → New repository → 이름 입력 → Private 선택(개인 프로젝트) → Create.
Personal Access Token 발급 (중요)
Settings → Developer settings → Personal access tokens → Generate. push할 때 비밀번호 대신 이 토큰을 사용함. 반드시 저장해둘 것.
서버/로컬과 연결
터미널에서 아래 명령어로 연결:
⚡ 실전 사용 루틴
Git을 매일 사용하는 실제 패턴은 단순하다. 아래 세 줄만 외우면 된다:
문제 발생 시 복원 방법
commit 메시지는 구체적으로! “수정” 보다 “원천신고 UI 스크롤 버그 수정”이 훨씬 나중에 도움이 된다. 미래의 나를 위한 메모라고 생각할 것.
🔒 .gitignore — 절대 빠뜨리면 안 되는 보안 설정
GitHub에 올리면 절대 안 되는 파일들이 있다. API 키, 비밀번호, 데이터베이스 파일 등. 실제로 이 설정 하나 빠뜨려서 대형 사고가 난 사례가 있다.
📰 2026년 3월 31일 — Anthropic(Claude 개발사)이 Claude Code의 소스코드 51만 줄을 실수로 공개 배포했다. .npmignore 설정에서 *.map 파일 제외 규칙 하나가 빠진 것이 원인이었다. 코드는 수 시간 만에 전 세계로 퍼져 복구 불가능 상태가 됐다.
🌟 마치며 — Git이 세상을 바꾼 이유
리누스 토발즈는 BitKeeper가 사용 불가능해지자 2주 만에 Git을 만들었다. “쓸 만한 게 없으면 만든다”는 해커 정신의 산물이었다.
그 결과물은 단순히 Linux 커뮤니티의 문제를 해결하는 것을 넘어, 소프트웨어 개발의 방식 자체를 바꿔놓았다. 오늘날 전 세계 1억 명 이상의 개발자가 Git과 GitHub를 사용하며, AI 코딩 도구들도 Git 위에서 작동한다.
그리고 이제 — 당신도 그 생태계의 일원이다.
✅ 오늘 배운 것
Git 개념 버전 관리 시스템
탄생 비화 BitKeeper 사건 → 리누스 토발즈 → 10일 개발
핵심 명령어 add → commit → push
GitHub Git 저장소 호스팅 서비스
.gitignore 민감 정보 보호 필수 설정
written with 🤍 · vinaida.xyz · 2026.05.03