Git

김재환·2023년 10월 24일
0

GIT

목록 보기
1/30

은 누가 만들었을까요? 바로 리누스 토발즈(Linus Torvalds)라는 사람이 만들었습니다.

리누스 토발즈는 리눅스(Linux)라고 하는 운영 체제를 만든 사람인데요.

혹시 운영 체제가 뭔지, 리눅스가 뭔지 모르는 분은 코드잇의 다음 레슨들을 참고하세요.

[애플리케이션을 도와주는 프로그램, 운영 체제] 레슨
링크텍스트
[유닉스 운영 체제] 레슨
링크텍스트
리누스 토발즈는 리눅스를 만든 이후에 BitKeeper라고 하는 툴(Tool)로 리눅스의 각 버전들(ver1, ver2, ver3 ...)을 관리하고 있었습니다.

그런데 리눅스 커뮤니티의 개발자 한 명이 BitKeeper의 내부 동작 원리를 분석하려고 했던 일을 계기로 리눅스 커뮤니티와 BitKeeper 측의 사이가 틀어지게 되었습니다. 이때문에 리눅스 커뮤니티 측에 대해서 BitKeeper는 유료화되었고, 리누스 토발즈는 BitKeeper를 대신할 다른 버전 관리 시스템을 찾아보기 시작했죠. 하지만 자신의 마음에 드는 버전 관리 툴을 찾지 못했고, 그래서 리누스 토발즈는 본인이 직접 버전 관리 프로그램을 만들어버렸습니다. 정말 대단한 사람이죠? 이렇게 만들어진 버전 관리 프로그램이 바로 깃입니다.

깃은 당시에 아래와 같은 목표를 갖고 설계 및 제작되었는데요.

빠른 속도
단순한 디자인
비선형적 개발 지원(수천 개의 브랜치를 병행할 수 있음, 브랜치가 뭔지는 나중 챕터에서 배웁니다.)
완전 분산형 시스템
리눅스와 같은 거대한 프로젝트도 속도 저하의 문제없이 관리할 수 있는 시스템
깃은 버전 관리(Version Control), 협업(Cooperation)에 필요한 여러 요소들이 고려되었기 때문에, 사용성이 굉장히 좋은 프로그램이 될 수 있었습니다.

그럼 왜 깃(git)이라는 이름이 붙었을까요? 리누스 토발즈가 깃을 맨 처음 만들었을 때 남겼던 기록을 보면 힌트를 얻을 수 있는데요. 그 기록은 아래 그림과 같습니다.

git

위 그림의 내용을 간단히 번역하면 다음과 같습니다.

"깃은 당신의 마음에 따라 그 어떤 것으로도 해석될 수 있습니다.

유닉스 커맨드에서 사용되는 명령어 이름을 제외한 랜덤한 알파벳 3글자의 조합

멍청하고 단순한(이런 특성을 지닌 아무 단어로 해석되어도 좋다는 의미)

global information tracker의 약자

goddamn idiotic truckload of sh*t 이라는 욕설의 약자"

이렇게 깃이라는 이름은 처음 만들어질 때부터 다양한 의미로 해석될 가능성을 갖고 탄생했습니다. 뭔가 리누스 토발즈의 독특함이 느껴지는 부분인데요. 혹시 이 기록을 직접 살펴보고 싶으신 분은 이 링크를 클릭해보세요.

이번 레슨은 어땠나요?

profile
안녕하세요

0개의 댓글